-
Подскажите, как сделать нестандартную кнопку, в частности мне нужна треугольная. Заранее благодарен, Андрей.
-
С помощью создания нового компонента. Если вопрос стои в том чтобы кнопка быля реально треугольной то вот вам великий и могучий набор функций CreateEllipticRgn, CreateRectRgn, CreatePolygonRgn, CreateRoundRectRgn, CombineRgn. SetWindowRgn
-
TMuBytton = class(TButton)
protected
procedure CreateWnd; override;
end;
implementation
procedure TMuBytton.CreateWnd;
var p: array[0..2] of TPoint;
R:HRGN;
begin
inherited CreateWnd;
p[0] := Point(0,0);
P[1] := Point(width,Height div 2);
p[2] := Point(0,Height);
R := CreatePolygonRgn(p,sizeof (p) div 8,WINDING);
SetWindowRgn(handle,R,true);
end;
-
Неужели это работает? (завтра попробую)
-
А почему бы и нет ?
-
> [4] DimaBr (09.01.07 09:28)
Ужастик получается.
-
А что вы хотели в пять строчек, реально треугольная кнопка, осталось только бордюры нарисовать.
-
> [6] DimaBr (09.01.07 12:07)
ага, а потом еще и focus свой рисовать и т.д. :)
-
Не только фокус, но и нажатое, отпущенное и Disabled состояние. Вы можете предложить другой способ ? Если нет, тогда нечего флудить.
-
Если так надо то качай из инета библиотеку Globus, она вроде как вместе с Jedi идёт, там много всего интересного.....
-
> dr_craigan (10.01.07 14:40) [9]
Внимание! Здесь обсуждаются вопросы, связанные с разработкой компонентов, редакторов свойств, редакторов компонентов и экспертов IDE. Вопросы по поиску и использованию готовых компонентов, редакторов или экспертов являются нарушением тематики и могут быть удалены.
-
Я в Globus ничего полезного не нашел. Вообще в Jedi сложно найти что-то полезное. P.S. Да прибудит с модераторами сила! Хотя на вопрос уже ответили, можно и пооффтопить...
|