Форум: "Основная";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];
ВнизНовые компоненты в Delphi Найти похожие ветки
← →
Skif (2004-03-12 18:11) [0]Я хочу создать свой компонет, например от TButton, но со своей прорисовкой и главное двухмерный.
Как мне это сделать, с чего начать..?
← →
TransparentGhost (2004-03-12 18:12) [1]Vzjat" knizhku i prochitat"...na prostom urovne pochti v kazhdoj knige jest".
← →
TransparentGhost (2004-03-12 18:15) [2]Ili v Source\Vcl\stdctrls.pas zagljani i posmotri kak sam TButton sdelan
← →
TUser © (2004-03-12 20:30) [3]TSuperPuperButton = class(TButton)
ну и т.д.
Надо будет переписать метод ответственный за прорисовку, его надо подсмотреть в исходниках.
PS. А стандартный TButton - он скольки мерный?
← →
Mim (2004-03-12 20:50) [4]TUser © (12.03.04 20:30) [3]
Налчие тени говорит о трехмерности кнопки
Skif (12.03.04 18:11)
TPanel впролне выступать в роли двухмерной кнопки
← →
Sentinel © (2004-03-12 21:01) [5]
> Mim (12.03.04 20:50) [4]
Налчие тени говорит об иллюзии трехмерности кнопки
← →
TUser © (2004-03-12 21:04) [6]Расположение кнопки на экрене говорит о двухмерности кнопки. Расположение оной на клавиатуре говорит о ее трехмерности, но такую кнопку нельзя отнаследовать от TButton. И вообще в Delphi ее создать нельзя - по крайне мере в 7й версии. Про D8.NET не знаю - может там и можно.
← →
Юрий Зотов © (2004-03-12 21:18) [7]> Skif (12.03.04 18:11)
> Я хочу создать свой компонет, например от TButton, но со своей
> прорисовкой
Собственно, Вы сами ответили на свой вопрос - нужно выбрать предка, отнаследоваться от него и изменить его прорисовку. Как именно можно ее изменить - зависит от самого предка.
Если это потомок TGraphicControl или TCustomControl, то достаточно заместить метод Paint. Если же это TWinControl, но не TCustomControl, то в общем случае контрол должен обрабатывать сообщения WM_PAINT, WM_ERASEBKGND и WM_NCPAINT.
У некоторых стандартных контролов Windows (в том числи, у кнопки) можно выставить стиль, указывающий на то, что его прорисовку программа берет на себя (для кнопки это стиль BS_OWNERDRAW), а далее в оконной прцедуре родительского окна обрабатывать сообщения WM_MEASUREITEM и WM_DRAWITEM.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.033 c