AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

keypress und window schliessen

Ein Thema von runger · begonnen am 25. Aug 2005 · letzter Beitrag vom 25. Aug 2005
Antwort Antwort
Seite 2 von 2     12   
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#11

Re: keypress und window schliessen

  Alt 25. Aug 2005, 10:56
In deinem Beispielprogramm wird der Status der Buttons beim verlassen des Fensters aber überhaupt nicht gespeichert oder hab ich da was übersehen?

edit: Sorry, hab "falsch rum" gekuckt, beim verlassen mit "ESC" soll ja grad NICHT gespeichert werden...

Gruß
Daniel
  Mit Zitat antworten Zitat
Benutzerbild von BrunoT
BrunoT

Registriert seit: 23. Jan 2003
Ort: Sandbeiendorf
360 Beiträge
 
Delphi 8 Professional
 
#12

Re: keypress und window schliessen

  Alt 25. Aug 2005, 11:17
Hi runger,

du verwendest Radiobutton, wo du eine RadioGroup verwenden kannst. dann funktioniert es.
Außerdem habe ich die Keyprewiev- Eigenschaft der Form2 auf true gestellt.

mfg

BrunoT
Angehängte Dateien
Dateityp: zip esc_158.zip (212,3 KB, 5x aufgerufen)
Holger

EDV- Ende der Vernunft
Meine Calcedit-Kompo
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#13

Re: keypress und window schliessen

  Alt 25. Aug 2005, 11:29
Hallo BrunoT,

das funktioniert genausowenig wie bei mir. Wenn man mit cancel rausgeht verhält sich das anders als wenn man mit ESC rausgeht. Da gibt es keinen Unterschied zwischen dir und mir. ???

Rainer
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#14

Re: keypress und window schliessen

  Alt 25. Aug 2005, 11:32
Handelt es sich um ein modales oder nichtmodales Formular?
Bei einem modalen Formular (und das bietet sich an), gibt es folgende Features:
Ein Button, dessen Property Cancel auf True steht wird automatisch von der VCL geklickt, wenn der Benutzer Escape drückt.
(Also vergiss alles mit KeyPress.)
Es darf nur einen Button mit Cancel=True geben!!

Wenn dieser Button (oder BitBtn) im Property ModalResult einen Wert ungleich mrNone wird das Formular automatisch geschlossen.

Ein modales Formular wird im Prinzip so benützt:
Delphi-Quellcode:
var
   frm : TProgSettingsForm;
begin
   // Formular erzeugen
   frm := TProgSettingsForm.Create(nil);
   try
     // Anfangswert ins Formular schreiben
     frm.AnzahlVersuche := .....

     if frm.ShowModal = mrOK then
     begin
        // evtl. geänderte Werte auslesen und irgenwo speichern
        ... := frm.AnzahlVersuche;
     end;
   finally
     frm.Free;
   end;
end;
Andreas
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#15

Re: keypress und window schliessen

  Alt 25. Aug 2005, 11:51
Hallo shmia,

das ist alles längst gegessen. Es ist ein modales Fenster. Den Button auf cancel setzen ist in meinem Prog realisiert. Ich will dass das Ganze mit dem Demoprogramm funktioniert und zwar auf einfache Weise. Es gibt überhaupt keinen Grund warum sich das Ganze anders verhält je nachdem ob ich cancel drücke oder ESC.
Downloade mein Programm und probiers aus.

Rainer
  Mit Zitat antworten Zitat
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#16

Re: keypress und window schliessen

  Alt 25. Aug 2005, 11:53
Wennich das setzen der RadioButtons von "FormShow" in "FormActivate" verschiebe funktioniert es wie gewollt. Ist zwar nicht so schön, aber tut.

Gruß
Daniel
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#17

Re: keypress und window schliessen

  Alt 25. Aug 2005, 12:00
Hallo Daniel,

Klasse, wenigstens eine Lösung für mein Problem.
Wenn du mir jetzt noch sagst warum das bei onshow nicht und bei onactivate geht wäre ich glücklich.

Rainer
  Mit Zitat antworten Zitat
Benutzerbild von BrunoT
BrunoT

Registriert seit: 23. Jan 2003
Ort: Sandbeiendorf
360 Beiträge
 
Delphi 8 Professional
 
#18

Re: keypress und window schliessen

  Alt 25. Aug 2005, 12:02
Hi runger,

1. 2.Form öffnen
2. RadioButton wählen, (zum Test habe ich beide Varianten angeclickt)
3. Save, Form zu über Schließen
4. Form auf
5. anderen RadioButton wählen,
6. Esc
7. Form auf, in der Radiogroup ist der gespeicherte Zustand, in den einzelnen Button nicht.

Ich habe nicht die Einstellung mrCancel und Cancel:=true benutzt, sondern wie gefordert das Keydownereignis der Form.

mfg

BrunoT

Ps. sollte es sich erledigt haben, bitte mal erläutern, wie.
Holger

EDV- Ende der Vernunft
Meine Calcedit-Kompo
  Mit Zitat antworten Zitat
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#19

Re: keypress und window schliessen

  Alt 25. Aug 2005, 12:05
Zitat von runger:
Klasse, wenigstens eine Lösung für mein Problem.
Wenn du mir jetzt noch sagst warum das bei onshow nicht und bei onactivate geht wäre ich glücklich.
Tja, wenn ich das wuesste
Da muesste man wahrscheinlich mal in den tiefen der VCL forschen.

Gruß
Daniel
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#20

Re: keypress und window schliessen

  Alt 25. Aug 2005, 13:09
Zitat von runger:
das ist alles längst gegessen. Es ist ein modales Fenster. Den Button auf cancel setzen ist in meinem Prog realisiert. Ich will dass das Ganze mit dem Demoprogramm funktioniert und zwar auf einfache Weise. Es gibt überhaupt keinen Grund warum sich das Ganze anders verhält je nachdem ob ich cancel drücke oder ESC.
Ok, ich habe gesehen, das sich das Demo tatsächlich seltsam verhält.
Du machst aber versch. Fehler in deinem Demo.
1.) Du hast ModalResult bei deinem Buttons nicht gesetzt
2.) Du erzeugst das Formular nicht jedesmal neu, wie von mir gezeigt
3.) der Datenfluss ist falsch!!!!
in deinem Demo holt sich das modale Formular die Variable a,b,c von Unit1.
Es muss genau umgekehrt laufen:
Deine Anwendung schreibt die Daten auf modale Formular und holt die Ergebnisse ab, wenn ModalResult = mrOK war.
Das modale Formular sollte so designt werden, dass keine Abhängigkeiten zu anderen Units in der Anwendung bestehen.
Schau dir meinen Delphicode nochmals an, dann siehst du dass diese Vorgehensweise 100% wasserdicht ist.
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:40 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz