Czy da sie jakos zrobic aby pokazal sie messagebox z opcja "tak" lub "nie" a na jego pasku tytulowym widoczne byloby odliczanie od 3 do 0 jesli nie podejmie sie akcji to sam wybierze "nie" [???]
0
0
Zamiast MessageBox zrób własne okno i do odliczania oraz zmiany nagłówka użyj TTimer.
0
Moglbys podpowiedziec jak sie do tego zabrac [???] :-/
0
smigo napisał(a)
Moglbys podpowiedziec jak sie do tego zabrac [???] :-/
File -> New -> Form
Wrzucasz na formę komponent Timer i
From1.Caption := IntToStr(jakisCzas);
pzdr.
0
na szybkiego i nie testowane:
var
Czas : Integer = 3;
implementation
{$R *.dfm}
procedure TForm1.ButtonNieClick(Sender: TObject);
begin
//tutaj jakies instrukcje
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Dec(Czas);
Form1.Caption := IntToStr(Czas);
if Czas = 0 then
begin
ButtonNieClick(Sender);
end;
end;
0
Możesz wykorzystać CreateMessageDialog
Przykład:
Uses ExtCtrls;
Var
d:tform;
T:TTimer;
Procedure TForm1.Timer(Sender: TObject);
Begin
d.Tag:=d.Tag-1;
d.Caption:=inttostr(d.tag);
IF d.tag<1 then d.ModalResult:=mrNo;
End;
Function TForm1.MessageDlgTimer(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons): Word;
Begin
d:=CreateMessageDialog(msg,DlgType, Buttons);
d.tag:=5;
T:=TTimer.create(nil);
T.Interval:=1000;
T.OnTimer:=Timer;
Result:=d.ShowModal;
T.Free;
End;
if MessageDlgTimer('Czy wyjść ?',
mtConfirmation, [mbYes, mbNo]) = mrYes then
0
Dzieki poszlo ;-)