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

Вниз

Запретить DrawFocusRect. при отрисовке строк Listbox   Найти похожие ветки 

 
Maksim V.   (2009-11-01 23:58) [0]

Здравствуйте. Необходимо запретить отрисовку рамки у выделенных элементов ListBox когда его окно сфокусировано. Вполне вероятно данная рамка рисуется через DrawFocusRect. если в родительском окне возвращать 0 в WM_DRAWITEM, можно убрать рамку. Интересует способ удаления этой рамки когда используется сабклассинг только самого элемента управления и WM_DRAWITEM в родительском окне не меняется. Спасибо.


 
Leonid Troyanovsky ©   (2009-11-02 10:18) [1]


> Maksim V.   (01.11.09 23:58)  

> Здравствуйте. Необходимо запретить отрисовку рамки у выделенных
> элементов ListBox когда его окно сфокусировано


procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
 Rect: TRect; State: TOwnerDrawState);
begin
 with (Control as TListBox), Canvas do
   begin
     FillRect(Rect);
     TextOut(Rect.Left, Rect.Top, Items[Index]);
     if odFocused in State then
       DrawFocusRect(Rect);
   end;
end;

Только, нехорошо это, прятать фокус.

--
Regards, LVT.



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

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

Наверх




Память: 0.46 MB
Время: 0.009 c
15-1326622195
brother
2012-01-15 14:09
2012.05.20
Продам аккаунт World Of Tanks


15-1326745802
Юрий
2012-01-17 00:30
2012.05.20
С днем рождения ! 17 января 2012 вторник


15-1326056648
Dmitry1987
2012-01-09 01:04
2012.05.20
обновление данных при multi-user работе


15-1326539168
SQLEX
2012-01-14 15:06
2012.05.20
Шахматы. Короткие партии. Аля "Клуб13"


15-1326347387
Demo
2012-01-12 09:49
2012.05.20
Выбор ноутбука для Delphi