Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
ВнизКак заставить кнопку мигать ? Найти похожие ветки
← →
kudatsky (2007-11-04 10:59) [0]Речь идёт о кнопках TButton,TBitBtn,TSpeedButton,TToolButton
← →
homm © (2007-11-04 11:19) [1]Мысленным усилием.
Ни разу не видел, что-бы кнопка мегала. Что нужно?
← →
kudatsky (2007-11-04 11:28) [2]Делаю голосовой Help, а сопровождать его будет мигание кнопок.
В общем, у меня только-что нечто получилось. Может, на этом и остановлюсь.
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Inc(Counter);
if Odd(Counter) then
ToolButton3.ImageIndex:=2
else
ToolButton3.ImageIndex:=4;
end;
Т.е. мигание идёт за счёт смены картинок.
← →
homm © (2007-11-04 11:37) [3]Что такое «мигать»?
← →
homm © (2007-11-04 11:43) [4]Может быть так подойдет?
procedure TForm1.Timer1Timer(Sender: TObject);
var
r: TRect;
DC: HDC;
begin
GetWindowRect(Button1.Handle, R);
DC := GetDC(0);
BitBlt(DC, R.Left, R.Top, R.Right - R.Left, R.Bottom - R.Top, DC, R.Top, R.Left, PATINVERT);
ReleaseDC(0, DC);
end;
← →
kudatsky (2007-11-04 12:13) [5]Хорошая мысль. Но получается только с TButton и его потомками, т.к. к
TToolButton нет свойства Handle
← →
Anatoly Podgoretsky © (2007-11-04 12:24) [6]
> kudatsky (04.11.07 11:28) [2]
У TButton нет свойства ImageIndex
← →
Kolan © (2007-11-04 12:37) [7]> Делаю голосовой Help
Сними видео и не мучайся.
← →
homm © (2007-11-04 12:38) [8]> [5] kudatsky (04.11.07 12:13)
> TToolButton нет свойства Handle
Вот так работает с любым контроллом.procedure TForm1.Button1Click(Sender: TObject);
var
DC: HDC;
Ctrl: TControl;
begin
Ctrl := Image1;
Inc(Counter);
if Odd(Counter) then begin
if (Ctrl is TWinControl) then begin
DC := GetDC((Ctrl as TWinControl).Handle);
BitBlt(DC, 0, 0, Ctrl.Width, Ctrl.Height, 0, 0, 0, PATINVERT);
ReleaseDC((Ctrl as TWinControl).Handle, DC);
end else begin
DC := GetDC(Ctrl.Parent.Handle);
BitBlt(DC, Ctrl.Left, Ctrl.Top, Ctrl.Width, Ctrl.Height, 0, 0, 0, PATINVERT);
ReleaseDC(Ctrl.Parent.Handle, DC);
end;
end else begin
Ctrl.Invalidate;
end;
end;
← →
kudatsky (2007-11-04 12:55) [9]Удачное решение. Спасибо !
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.04 c