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

Вниз

Изменение стандартного компонента.   Найти похожие ветки 

 
MixerPro   (2002-10-24 09:01) [0]

Как можно изменить компонент TCheckListBox, чтобы вместо стандартного CheckBox (галки в квадрате), менялось собственное изображение (к примеру темная/светлая лампочка или т.п.) Я так понимаю, что надо создать новый компонент типа TMyCheckListBox от TCheckListBox и переопределить какие-то свойства. Но как?


 
Ученик   (2002-10-24 09:03) [1]

RXLib это позволяет


 
Севостьянов Игорь   (2002-10-24 11:23) [2]

Что значит как ? Берешь и пишешь. Какие сложности не пойму.
Я к примеру написал TCheckTreeView, а там какие хочешь (на уровне компоненты) картинки вешай. Кстати TCheckListBox - это стандартный Windows "компонент" наследованный от типа BUTTON


 
Игорь Шевченко   (2002-10-24 12:19) [3]


> Кстати TCheckListBox - это стандартный Windows "компонент"
> наследованный от типа BUTTON


Бред


 
caH4o   (2002-10-24 12:33) [4]

to Севостьянов Игорь

Небольшая неточность, от самого типа TButton ничего не наследуется

TObject->TPersistent->TComponent->TControl->TWinControl->TButtonControl->TCustomCheckBox->TCheckBox

TObject->TPersistent->TComponent->TControl->TWinControl->TButtonControl->TButton


 
Рыжик   (2002-10-24 13:15) [5]


> MixerPro © (24.10.02 09:01)

Можно не создавая никаких компонент над ListView поизвращаться


 
MixerPro   (2002-10-24 15:26) [6]

Вы правы. Я все сделал с помощью события OnDrawItem.


 
Севостьянов Игорь   (2002-10-25 12:20) [7]


> Игорь Шевченко © (24.10.02 12:19)


> caH4o (24.10.02 12:33)

Прошу прощения немного перепутал с TCustomCheckBox. Я и не говорил о TButton, я же сказал это класс Windows "BUTTON"

procedure TCustomCheckBox.CreateParams(var Params: TCreateParams);
const
Alignments: array[Boolean, TLeftRight] of DWORD =
((BS_LEFTTEXT, 0), (0, BS_LEFTTEXT));
begin
inherited CreateParams(Params);
CreateSubClass(Params, "BUTTON");
...

На самом деле это конечно же "LISTBOX" от Windows

TCheckListBox = class(TCustomListBox)
-------------------------------------------
procedure TCustomListBox.CreateParams(var Params: TCreateParams);
type
PSelects = ^TSelects;
TSelects = array[Boolean] of DWORD;
const
Styles: array[TListBoxStyle] of DWORD =
(0, LBS_OWNERDRAWFIXED, LBS_OWNERDRAWVARIABLE);
Sorteds: array[Boolean] of DWORD = (0, LBS_SORT);
MultiSelects: array[Boolean] of DWORD = (0, LBS_MULTIPLESEL);
ExtendSelects: array[Boolean] of DWORD = (0, LBS_EXTENDEDSEL);
IntegralHeights: array[Boolean] of DWORD = (LBS_NOINTEGRALHEIGHT, 0);
MultiColumns: array[Boolean] of DWORD = (0, LBS_MULTICOLUMN);
TabStops: array[Boolean] of DWORD = (0, LBS_USETABSTOPS);
CSHREDRAW: array[Boolean] of DWORD = (CS_HREDRAW, 0);
var
Selects: PSelects;
begin
inherited CreateParams(Params);
CreateSubClass(Params, "LISTBOX");
...


 
Игорь Шевченко   (2002-10-25 12:48) [8]

Севостьянов Игорь © (25.10.02 12:20)

:-)

Справедливость восстановлена

:-)



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

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

Наверх





Память: 0.46 MB
Время: 0.009 c
14-11454
Юрий Зотов
2002-10-14 18:24
2002.11.04
день добрый всем. подскажите пожалуюста что бы мне перехватить


1-11156
AlexeyMir
2002-10-24 14:12
2002.11.04
Hint на Scrole


3-11084
Elvira
2002-10-15 14:02
2002.11.04
LookUp-поля в InterBase


1-11247
Andrushk
2002-10-22 15:48
2002.11.04
Как узнать абсолютные координаты курсоры мыши?


1-11335
KIR
2002-10-24 12:12
2002.11.04
Можно ли скрыть MDI Child форму?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский