![]() |
[HELP]Assistant schaltet sich aus
Hallo alle,
Ich habe folgendes problem. Nach dem der Timer mit dem Status auf 100% ist, sollte er über den Assistant die Message ausgegeben werde. Die man dann mit Ok bestätigen soll. Das Problem ist, das sich der Assistant schliß sobald man auf Ok klickt obwohl er das nicht sollte. Wisst ihr evt woran das ligt ? Besten dank schonmal...
Delphi-Quellcode:
const
Msg = 'Script wurden Installiert, du kannst nun die Buttons benutzen^.'; begin Probar1.Position := Probar1.Position +1; Application.ProcessMessages; If Probar1.Position = 10 then Begin bsSkinCheckRadioBox1.Checked := true; bsSkinButton2.Visible := true; end; If Probar1.Position = 25 then Begin bsSkinCheckRadioBox3.Checked := true; bsSkinButton1.Visible := true; end; If Probar1.Position = 48 then Begin bsSkinCheckRadioBox2.Checked := true; bsSkinButton3.Visible := true; end; If Probar1.Position = 82 then Begin bsSkinCheckRadioBox4.Checked := true; bsSkinButton4.Visible := true; end; If Probar1.Position = 99 then Begin positiv.Visible := True; negativ.Visible := False; end; If Probar1.Position = 100 then begin bsSkinCheckRadioBox5.Checked := true; Timer1.Enabled := false; Probar1.Position := 100; bsSkinButton2.Enabled := True; bsSkinButton1.Enabled := True; bsSkinButton3.Enabled := True; bsSkinButton4.Enabled := True; Assistant1.MsgDlg.Title := 'Installation Beendet !'; Assistant1.MessageDlg(Msg, mtInformation, [mbOK], 0); end; end; Hier mal der ganze code... evt ligts da irgendwo
Delphi-Quellcode:
implementation
{$R *.dfm} // Timer ////////////////////// // procedure TForm1.Timer1Timer(Sender: TObject); const Msg = 'Script wurden Installiert, du kannst nun die Buttons benutzen^.'; begin Probar1.Position := Probar1.Position +1; Application.ProcessMessages; If Probar1.Position = 10 then Begin bsSkinCheckRadioBox1.Checked := true; bsSkinButton2.Visible := true; end; If Probar1.Position = 25 then Begin bsSkinCheckRadioBox3.Checked := true; bsSkinButton1.Visible := true; end; If Probar1.Position = 48 then Begin bsSkinCheckRadioBox2.Checked := true; bsSkinButton3.Visible := true; end; If Probar1.Position = 82 then Begin bsSkinCheckRadioBox4.Checked := true; bsSkinButton4.Visible := true; end; If Probar1.Position = 99 then Begin positiv.Visible := True; negativ.Visible := False; end; If Probar1.Position = 100 then begin bsSkinCheckRadioBox5.Checked := true; Timer1.Enabled := false; Probar1.Position := 100; bsSkinButton2.Enabled := True; bsSkinButton1.Enabled := True; bsSkinButton3.Enabled := True; bsSkinButton4.Enabled := True; Assistant1.MsgDlg.Title := 'Installation Beendet !'; Assistant1.MessageDlg(Msg, mtInformation, [mbOK], 0); end; end; // Form Setting /////////////////////// // procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); const Msg = 'Bist du sicher das du das Programm Verlassen Wilst ?'; begin Assistant1.MsgDlg.Title := 'Beenden'; Assistant1.MessageDlg(Msg, mtInformation, [mbYes, mbNo], 0); Assistant1.Visible := False; end; procedure TForm1.FormCreate(Sender: TObject); begin Timer1.Enabled := True; positiv.Visible := False; Assistant1.Visible := True; end; // Buttons Aktionen//////////////////////////// // procedure TForm1.bsSkinButton1Click(Sender: TObject); begin ShellExecute(0, Nil, PChar('C:\Programme\Counter Strike Script Installer\ScrGui\'), Nil, Nil, SW_NORMAL); end; procedure TForm1.bsSkinButton4Click(Sender: TObject); begin ShellExecute(0, Nil, PChar('C:\Programme\Counter Strike Script Installer\ScrRcCfg\'), Nil, Nil, SW_NORMAL); end; procedure TForm1.bsSkinButton3Click(Sender: TObject); begin ShellExecute(0, Nil, PChar('C:\Programme\Counter Strike Script Installer\ScrPic\'), Nil, Nil, SW_NORMAL); end; procedure TForm1.bsSkinButton2Click(Sender: TObject); begin ShellExecute(0, Nil, PChar('C:\Programme\Counter Strike Script Installer\ScrTool\'), Nil, Nil, SW_NORMAL); end; procedure TForm1.bsSkinXFormButton1Click(Sender: TObject); const Msg = 'Bist du sicher das du das Programm Verlassen Wilst ?'; begin Assistant1.MsgDlg.Title := 'Beenden'; Assistant1.MessageDlg(Msg, mtInformation, [mbYes, mbNo], 0); Assistant1.Visible := False; close; end; end. |
Re: [HELP]Assistant schaltet sich aus
Hi,
du zeigst einen Dialog an
Delphi-Quellcode:
aber du fragst den Rückgabewert des Message-Dialoges nicht ab. Die MessageDlg-Funktion gibt als Rückgabewert einen Integer zurück, für den es Konstanten gibt (mrOK, mrCancel, usw...).
...
Assistant1.MessageDlg(Msg, mtInformation, [mbOK], 0); ... Das könntest du so machen.
Delphi-Quellcode:
Ich hoffe ich hab die Frage richtig verstanden, ist nämlich etwas "schwammig" formuliert. :wink:procedure IrgendEtwas; var iResult: Integer; begin iResult := MessageDlg(...); if iResult = mrOK then begin // hier auf OK reagieren end else if iResult = mrCancel begin // hier auf Cancel reagieren end else begin // hier evtl. alle anderen Fälle end; end; Dadurch rate ich jetzt mal dein Problem. :roll: Gruss BlackDragon |
Re: [HELP]Assistant schaltet sich aus
Wenn du uns noch verraten würdest, was "Assistant1" ist und wie es deklariert wird, wären wir schonmal einen Schritt weiter. ;)
|
Re: [HELP]Assistant schaltet sich aus
Zitat:
das ist das: ![]() Zitat:
das ist eine komponenten nicht das MessageDlg oder ist das egal wird das bei jedem gebraucht. Oh... jetzt versteh ich was du meinst... sry =) jop das könnt ich mal probieren... |
Re: [HELP]Assistant schaltet sich aus
Hi,
wie gesagt habe ich geraten. :wink: Für diese Kompo gibts doch bestimmt Beispiele, ein Dokumentation oder (wie ich gesehen habe) ein Support-Forum. Dort sollte doch zu finden sein, wie du mit einem Dialog dieser Komponente verfahren solltest. Meine Antwort bezog sich auf die Funktion MessageDlg und die Vermutung war, das es sich bei der Komponente ähnlich verhalten müsste, da der Aufbau der Parameter beider Aufrufe identisch zu sein scheint. Der Beispiel-Code war auch nur als "möglicher Ablauf" der Nutzung und als Denkanstoß zu betrachten. Gruss BlackDragon |
Re: [HELP]Assistant schaltet sich aus
ja aber für den assistat muss ich in demfall die dokumentation anschauen weil über CloseQuery gehts so:
Delphi-Quellcode:
Nur an den normalen OK ohne das er es closed... bin noch am rumtesten
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
const Msg = 'Bist du sicher das du das Programm Verlassen Wilst ?'; begin if not Assistant1.MovingToSync then begin Assistant1.MsgDlg.Title := 'Beenden'; CanClose := Assistant1.MessageDlg(Msg, mtWarning, [mbYes, mbNo], 0) = mrYes; if CanClose and Assistant1.Showing and (Assistant1.DockSite = nil) then begin Hide; Assistant1.Visible := False; end; end else CanClose := False; end; |
Re: [HELP]Assistant schaltet sich aus
ach ich habs jetzt einfach so gemacht....
Delphi-Quellcode:
If Probar1.Position = 100 then
Assistant1.MsgDlg.Title := 'Installation Beendet !'; Assistant1.MessageDlg(Msg, mtInformation, [mbOK], 0); Assistant1.Visible := True; end; end; Ich schalte halt den assistant einfach wider ein. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz