var
h:HDC;
begin
H:=GetDC(Button2.Handle);
//рисуем что-нибудь через win api
Rectangle(H,0,0,20,20);
Как изменять форму и цвет кнопки
В итоге хотелось бы получить следующее:
Button1.Canvas.RoundRect(30,30,200,100,30,30);
Button1.Canvas.Brush.Color:=clYellow;
Как обычно решается проблемма изменения внешнего вида кнопок?
Большое спасибо!
Код:
Цитата: alenov
Как обычно решается проблемма изменения внешнего вида кнопок?
написанием собственных комопнентов.
Может быть есть еще какой-нибудь способ модифицировать кнопки. Хотя бы менять цвет, хотя бы вместе с формой (может прозрачными их делать)?
прозрачный это к speedbuton'у, с рисунком к bitbtn'у, иначе либо свой компонент либо сторонние использовать.
а стандартные нато и стандартные что они цвет из настроек виндовса берут, чтоб интерфейсом не шибко выделяться. видимо на зоре кнопкостроения в разнообразии этом надобности ни кто не наблюдал.
з.ы. из сторонних, чтоб кнопке форму любую придавать, если не ошибаюсь в raize компонентах было
Цитата: alenov
На сколько я понимаю, с помощью этого способа на поверхности кнопки создается Canvas, но, во-первых, Canvas заслоняет заголовок и иконку, во-вторых, кнопка попрежнему остается прямоугольной и ее углы торчат из-за холста. Так проще вообще без кнопки обходиться и городить все на Canvase
Может быть есть еще какой-нибудь способ модифицировать кнопки. Хотя бы менять цвет, хотя бы вместе с формой (может прозрачными их делать)?
Может быть есть еще какой-нибудь способ модифицировать кнопки. Хотя бы менять цвет, хотя бы вместе с формой (может прозрачными их делать)?
Просто напишите свою простейшую кнопку.
Можно над TImage поиздеваться )))))