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

Вниз

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

 
race1   (2002-07-01 13:00) [0]

как состряпать компонент listbox без визуальных средств листбокса, например, рамочки... но что бы это был листбох


 
Игорь Шевченко ©   (2002-07-01 13:04) [1]

Если нечто выглядит, как собака, лает, как собака и кусается, как собака, то это, очевидно, и есть собака ?


 
Skier ©   (2002-07-01 13:07) [2]

> race1
Если без рамочки то сделай BorderStyle := bsNone и будет
тебе счастье.

А вообще я присоединяюсь к Игорю Шевченко...


 
Opuhshii   (2002-07-01 13:11) [3]

, а при WM_PAINT можно таких наворотить,.. %) и не только с рамочкой,.. имхо так обычно и делают,..


 
Игорь Шевченко ©   (2002-07-01 13:14) [4]

Opuhshii (01.07.02 13:11)

Обычно (для ListBox, по крайней мере) делают через WM_DRAWITEM.
А стили (WS_BORDER или его отсутсвие) задают при создании окна, перекрывая метод CreateParams. Или в процессе, через Get/SetWindowLong


 
Opuhshii   (2002-07-01 13:22) [5]

2Игорь Шевченко © (01.07.02 13:14)
"например, рамочки... ", а если _например_ рисовать " собаку "?


 
Игорь Шевченко ©   (2002-07-01 14:03) [6]

Opuhshii (01.07.02 13:22)

Собаку - только через WM_PAINT :-)

Используя недокументированную функцию PaintDogEx(DC : HDC; ...)


 
race1   (2002-07-01 16:44) [7]

имеется в виду что бы полностью своё сделать, полностью
самому всё нарисовать, но что б сущность бокса
осталась... Только ВинАпи? Всякие крете свои?


 
Sasha9 ©   (2002-07-01 16:51) [8]

если есть желание, то можно делать потомка от TGraphic или от TGraphicControl, добавив свойство типа TStrings (или TStringList) и сомому всё прорисовать


 
Игорь Шевченко ©   (2002-07-01 16:51) [9]

race1 (01.07.02 16:44)

Здесь даже WinApi не поможет. Зачем надо имитировать ListBox полностью своим ?


 
Fiend ©   (2002-07-01 16:58) [10]

Очевидно для того чтобы научиться пользовать недокументированную функцию PaintDogEx(DC : HDC; ...).
Тока жаль вы не все параметры к ней указали
:)


 
race1   (2002-07-02 07:28) [11]

всё, я решил етот вопрос путём написания функции
ondrawitem, мне нравится (как ето ни странно но
paintdogex в справке нету... интересно, почему:) но теперь другой вопрос - как убрать рамочку вокруг итемов, она мне не нравитса?


 
Игорь Шевченко ©   (2002-07-02 10:01) [12]

Рамочка вокруг Item"ов убирается переписанной процедурой
procedure CNDrawItem(var Message: TWMDrawItem); message CN_DRAWITEM;
у наследника ListBox"а



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

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

Наверх




Память: 0.49 MB
Время: 0.024 c
1-47565
Катерина
2002-06-28 10:52
2002.07.15
Длинные строки в ListBox


1-47429
soho
2002-07-03 05:12
2002.07.15
SysTray


7-47825
Hel
2002-04-22 15:23
2002.07.15
Как скрыть окно, появляющеееся после печати?


14-47788
VID
2002-06-14 00:21
2002.07.15
Использование нелицензионного софта


1-47355
MsGuns
2002-06-27 15:27
2002.07.15
Не хватает Борланд. и Виндузных иконок