VCL
Code: |
var {©Drkb v.3(2007): www.drkb.ru} NewAction : TAction; begin NewAction := TAction.Create(self); NewAction.ActionList := ActionList1; end; |
Автор ответа: Dayana
- Подробности
- Родительская категория: VCL
- Категория: Action, ActionList
Функция CreateAction (AOwner: TComponent;ActionClass: TBasicActionClass ):TBasicAction;
Модуль: ActnList
Функция создает действие (Action) заданного типа, которое отображается во время проектирования в редакторе списка Action.
Тип Action указывается в параметре ActionClass.
Вызов функции аналогичен выполнению кода ActionClass.Create(AOwner), за исключением того, что функция CreateAction использует значение параметра Resource процедуры RegisterActions для инициализации значений action-объекта, основанного на данном параметре.
- Подробности
- Родительская категория: VCL
- Категория: Action, ActionList
Вы не можете изменить цвет стандартного TButton, так как кнопки управления окнами всегда рисует себя с
цвет кнопки определяется в панели управления. Но можно создать создать новый компонент TButton и ручка
и рисунок поведения есть.
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
Этот компонент представляет из себя кнопку, на которую не надо нажимать, чтобы получить событие OnClick. Достаточно переместить курсор мышки на кнопку. При создании такого компонента традиционным способом, требуется довольно много времени, так как необходимо обрабатывать мышку, перехватывать её и т.д. Однако результат стоит того!
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
Code: |
SpeedButton1.Perform(WM_LBUTTONDOWN, 0, 0); SpeedButton1.Perform(WM_LBUTTONUP, 0, 0); |
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
Я знаю как нажать кнопку через keypress, но хотя пользователь определил действие в обработчике события OnClick, сама кнопка не отражает видимых изменений, происходящих при ее нажатии мышью. Кто-нибудь может мне помочь?
Вы можете сделать кнопку "нажатой" или "ненажатой", посылая ей сообщение BM_SETSTATE. Определить ее текущее состояние можно, послав ей сообщение BM_GETSTATE.
Для нажатия кнопки:
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
Выводите текст надписи непосредственно на "glyph" TBitBtn'а
Code: |
procedure TForm1.FormCreate(Sender: TObject); var R: TRect; N: Integer; Buff: array[0..255] of Char; begin with BitBtn1 do begin Caption := 'A really really long caption'; Glyph.Canvas.Font := Self.Font; Glyph.Width := Width - 6; Glyph.Height := Height - 6; R := Bounds(0, 0, Glyph.Width, 0); StrPCopy(Buff, Caption); Caption := ''; DrawText(Glyph.Canvas.Handle, Buff, StrLen(Buff), R, DT_CENTER or DT_WORDBREAK or DT_CALCRECT); OffsetRect(R, (Glyph.Width - R.Right) div 2, (Glyph.Height - R.Bottom) div 2); DrawText(Glyph.Canvas.Handle, Buff, StrLen(Buff), R, DT_CENTER or DT_WORDBREAK); end; end; |
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
В некоторых видео режимах прозрачная часть glyph'а стандартного TBitBtn становится видной. Как этого избежать?
В примере используется техника закраски прозрачной части glyph'а цветом кнопки на которой он находится - таким образом glyph кажется прозрачным.
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
Как выдать текст под наклоном?
Чтобы вывести под любым углом текст необходимо использовать TrueType Fonts (например «Arial»). Например:
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
Автор: Dennis Passmore
Могу ли я из ресурсов поочередно загружать глифы для кнопок speedbutton и, если да, то как это сделать?
Например, если в вашем проекте используется TDBGrid, то иконки кнопок компонента DBNavigator могут линковаться вашей программой, и их можно загрузить для использования в ваших speedbutton следующим образом:
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn
сли вы хотите, чтобы кнопка или пункт меню выполнял другую функцию при нажатой кнопке shift ,
вы можете использовать функцию GetKeyState .
GetKeyState принимает в качестве параметра виртуальный код кнопки и возвращает значение меньше 0,
если кнопка нажата.
- Подробности
- Родительская категория: VCL
- Категория: Button, SpeedButton, BitBtn