Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.07.25;
Скачать: [xml.tar.bz2];

Вниз

Событие на bitmap в stringgrid   Найти похожие ветки 

 
Uran   (2005-07-05 14:02) [0]

Мастера! Помогите плиз!!!!
Есть StringGrid. 30X30 ячеек, в каждую ячейку вставленно от 2х до 5 bitmap`ов. Подскажите, если можно на примере, как обработать события  нажатия  на картинку или наведении на неё мыши.
Заранее благодарен


 
pasha_golub ©   (2005-07-05 16:41) [1]

Вручную узнавать положение картинки и генерировать свое событие. Хотя, не серьезно это. В Стрингрид и картинки, и еще и несколько.

Чего надо-то? Может по-другому кошерней будет?


 
Digitman ©   (2005-07-05 16:47) [2]

и на шута, спрашивается, стринггрид, когда в ячейках вместо текста изображение ?

почему не дрогрид ?


 
Uran   (2005-07-06 09:55) [3]

Каждая картинка имеет свои тип и назначение, и их очень много в базе, т.е при занесении её в стринг грид надо сохранять её позицию ... далее если обрабатывать перемещение мыши по сетки надо с каждым обьектом сравнивать ...  а это ну очень сильно скажется на производительности ! :(

а если использовать дро грид, какие он даст преимущества?


 
evvcom ©   (2005-07-06 10:00) [4]


> и их очень много в базе

так может тогда вообще DBGrid использовать?


 
Uran   (2005-07-06 10:02) [5]

а что это даст? как я по наведению мыши на обьект быстро смогу определить какой именно обьект выбран, и какой хинт показать?
хотя может я совершенно не в том направлении ищу и есть более простые методы? просветите, а ? :)


 
Digitman ©   (2005-07-06 10:04) [6]


> при занесении её в стринг грид надо сохранять её позицию


ну и сохраняй !
в чем проблема-то ?


> если обрабатывать перемещение мыши по сетки надо с каждым
> обьектом сравнивать ...  а это ну очень сильно скажется
> на производительности !


как алгоритм построишь, так и производительность будет


> если использовать дро грид, какие он даст преимущества?


по кр.мере, стринг-листы (в которых хранятся строки с текстами в ячейках) не будут создаваться, т.е. явная экономия ресурсов процесса ... мне просто непонятно, зачем тебе стринг-грид, предназначенный, по умолчанию и в 1-ю очередь, для отображения в ячейках ТЕКСТА, в то время как в ячейках ты отображаешь не текст, а КАРТИНКИ ..


 
Uran   (2005-07-06 10:06) [7]


> по кр.мере, стринг-листы (в которых хранятся строки с текстами
> в ячейках) не будут создаваться, т.е. явная экономия ресурсов
> процесса ... мне просто непонятно, зачем тебе стринг-грид,
> предназначенный, по умолчанию и в 1-ю очередь, для отображения
> в ячейках ТЕКСТА, в то время как в ячейках ты отображаешь
> не текст, а КАРТИНКИ ..

ну это не суть важно ... и там и там по кавасу рисую...

> как алгоритм построишь, так и производительность будет


вот в этом и прошу помощи ... как грамотно посторить быстродейственный алгоритм ... я не прошу реализацую алгоритма, а хотя бы основную идею :)


 
evvcom ©   (2005-07-06 10:17) [8]

А у самого какие идеи есть? Выкладывай, поправим. Думаешь охото тут сочинение на 3 листа писать?


 
Digitman ©   (2005-07-06 10:22) [9]


> Uran   (06.07.05 10:06) [7]


тебе нужно индексировать изображения

создай, например, список записей вида :

row: Integer; //№ строки ячейки
col: integer; //№ столбца ячейки
imgrect: TRect; //отн.координаты зоны отображения картинки imgobj
imgobj: объект_ассоциированный_с_картинкой_отображаемой_в_зоне_imgrect

в ходе "загрузки" заполняй этот список

по событию мыши OnMouseXXX ты имеешь отн.коорд-ты X,Y (кл.зона окна грида), из них получаешь экр.координаты (ClientToScreen), передаешь их параметрами в DrawGrid.MouseToCell(), получаешь row и col ... имея X, Y, row, col ищешь в списке imgobj


 
Uran   (2005-07-06 10:29) [10]

Спасибо большое, буду пробовать! :)


 
REA   (2005-07-06 10:33) [11]

А может в каждую ячейку по одному рисунку? Тогда MouseToCell


 
Uran   (2005-07-06 10:40) [12]

да я тоже об этом думал ... но нужно что бы визуально выглядело что в одной ячейке несколько картинок, это своего рода  календарь будет. А как вставить Stringgrid в Cell я не предствляю ! :(



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.07.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.047 c
1-1120557755
Uran
2005-07-05 14:02
2005.07.25
Событие на bitmap в stringgrid


1-1120482619
vigo
2005-07-04 17:10
2005.07.25
Работа с несколькими компонентами


1-1120687991
Чайник
2005-07-07 02:13
2005.07.25
Как узнать, установлен ли шрифт с конкретным именем?


14-1120041635
infom
2005-06-29 14:40
2005.07.25
Помогите решить задачу !


1-1120755837
Kolan
2005-07-07 21:03
2005.07.25
Текст на кнопках TToolBar справа от картинок. Как?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский