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 1 von 2  1 2      
runger
(Gast)

n/a Beiträge
 
#1

keypress und window schliessen

  Alt 25. Aug 2005, 07:12
Hallo,
ich habe ein seltsames Verhalten in einem von uns geschrieben Programm. Vielleicht kann jemand helfen.

Es befinden sich, auf einem Formular 3 Radiobuttons und zwei Buttons. Mit einem Button werden die Werte der drei Radiobuttuns (checked) in boolsche Variablen geschrieben. Beim öffnen des Formulars werden die Radiobuttons (onshow) jeweils wieder so gesetzt wie sie in den Variablen standen. Der zweite Button schliesst das Fenster einfach mit close. Das funktioniert alles prächtig.
Wir wollen das Fenster aber auch mit ESC schliessen und haben das Ganze in onkeypress des Formulars abgefangen.
Funktioniert auch, nur sind die Zustände der Radiobuttons, nach dem wiederöffnen, in einem falschen Zustand, obwohl diese laut Debugger richtig gesetzt sind.
Beim verlassen des Formulars mit dem Button muss sich das Fenster also anders verhalten als beim verlassen über Onkeypress, obwohl in beiden nur ein close steht.
Ich versteh das nicht.

Rainer
  Mit Zitat antworten Zitat
Benutzerbild von BrunoT
BrunoT

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

Re: keypress und window schliessen

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

sind die Boolschen Variablen global oder lokal definiert?

mfg

BrunoT
Holger

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

n/a Beiträge
 
#3

Re: keypress und window schliessen

  Alt 25. Aug 2005, 09:28
Hallo,
global definiert. Das ist es aber nicht, hab ich mit Debugger überprüft. Die Radiobuttons werden in onshow richtig gesetzt, aber trotzdem falsch angezeigt.

Wie gesagt, ich verstehs nicht.

Rainer
  Mit Zitat antworten Zitat
Benutzerbild von BrunoT
BrunoT

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

Re: keypress und window schliessen

  Alt 25. Aug 2005, 09:54
Versuch mal, mit Keypress das ButtonClick-Ereignis des Schließen-Buttons anzusprechen
Holger

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

n/a Beiträge
 
#5

Re: keypress und window schliessen

  Alt 25. Aug 2005, 10:30
Hallo,

hab ich auch versucht. Gleiches Verhalten. Das Programm verhält sich nach wie vor anders wenn ich das Window mit ESC verlasse.

Rainer
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#6

Re: keypress und window schliessen

  Alt 25. Aug 2005, 10:35
Hallo,

ich bekomme dieses Problem auch, wenn ich statt onkeypress den Abbruchbutton cancel auf true setze und dann mit ESC rausgehe.

Rainer
  Mit Zitat antworten Zitat
ringli

Registriert seit: 7. Okt 2004
509 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: keypress und window schliessen

  Alt 25. Aug 2005, 10:37
Nützt es etwas wenn du das Ganze im KeyDown statt im KeyPress versuchst?
  Mit Zitat antworten Zitat
Benutzerbild von BrunoT
BrunoT

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

Re: keypress und window schliessen

  Alt 25. Aug 2005, 10:37
Hast du die Variable Key nach keypressed auf Null gesetzt oder bei ESC gelassen?

Delphi-Quellcode:
if key = 27 then
Begin
  key:=0;
  close;
end;
ich denke mal, da ESC ja als Abbruch sonst vom Programm weiterverarbeitet wird, erfolgt keine korrekte Zuweisung.

@ringli,

Das ist schon interessant, ich weiß nur nicht im Augenblick, welches Ereignis zuerst eintritt. Das wäre auszuprobieren.
Holger

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

Registriert seit: 7. Okt 2004
509 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: keypress und window schliessen

  Alt 25. Aug 2005, 10:40
Also ich mache dass immer so:
Delphi-Quellcode:
{*** Tastenkürzel vergeben ***}
procedure TProgramm.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  {*** ESC beendet das Programm ***}
  if (Key = $1B) then CancelClick (Sender);
end;
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#10

Re: keypress und window schliessen

  Alt 25. Aug 2005, 10:48
Hallo,

nützt alles nix. Hier ist ein Testprog mit Quellcode. Vielleicht findet ihr raus was da passiert.
Für alle Stylisten, das ist ein schnell zusammengeschustertes Prog.

Rainer
Angehängte Dateien
Dateityp: zip esc_197.zip (210,5 KB, 7x aufgerufen)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:26 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