Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.24;
Скачать: CL | DM;

Вниз

listbox   Найти похожие ветки 

 
do_the_right_thing   (2002-06-12 00:38) [0]

Здравствуйте. У меня тут за время общения с листбоксом накопилось несколько вопросов. помогите плз
1)при выделении итема в листбоксе вокруг него есть рамочка
как ее убрать?
2)сделал фоном листбоксу картинку bmp при помощи
listbox1.canvas.draw(0,0,image1.canvas.bitmap)
для этого всунул эту строку в form.onpaint (единственное место, которое я нашел, чтобы и картинка была и итемы нормально писались ), но при прокручивании листбокса картинка стирается. как сделать чтобы и картинка всегда показывалась и итемы в листбоксе тоже?
3)как узнать в процедуре listbox.dblclick индекс нажатого итема в том же листбоксе?


 
VID ©   (2002-06-12 00:53) [1]

3. ListBox1.ItemIndex


 
allrussia ©   (2002-06-12 02:18) [2]

1)при выделении итема в листбоксе вокруг него есть рамочка
как ее убрать?


Открываешь файл StdCtrls.pas в папке $Delphi$\Source\Vcl (его там может и не быть, должно быть установлено Visual Component Library Suite). Открываешь в Delphi, дважды удаляешь из этого файла следующую строку (можно заремить //):

if odFocused in State then DrawFocusRect(hDC, rcItem);

Сохраняешь, копируешь сохраненненный файл в папку $Delphi$\Lib.

Работает с ListBox, ComboBox, DirectoryListBox, DriveComboBox и т.д. Не забудь ставить стиль компонента OwnerDraw...


 
Song ©   (2002-06-12 10:10) [3]

1) Можно не делать так радикально как предложил allrussia (c)
Можно просто написать свой обработчик на событие TListBox.onDrawItem и не включать вышеупомянутую строку в обработчик.
2) Очевидно, что нужно ловить сообщение о скролировании контрола и рисовать в этот момент также.


 
do_the_right_thing   (2002-06-12 18:05) [4]

спасибо всем



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

Текущий архив: 2002.06.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
3-77308
Octav
2002-05-31 11:44
2002.06.24
Delphi & InterBase


6-77537
SourceNetworks
2002-04-18 09:33
2002.06.24
Отправит сообщение по сети


6-77521
Orvat
2002-04-15 10:29
2002.06.24
Свободен ли порт


1-77372
SkyWalker
2002-06-13 13:00
2002.06.24
Create


3-77258
Stocker !
2002-05-20 10:23
2002.06.24
Как перестроить Query на другой альяс?