![]() |
Wie Aktiviere ich den Fokus bei Formularen
Hallo,
(Habe noch kein groß erfahrung mit programmieren, deswegen bitte ich um hilfe) Ich habe ein Problem usw, ich habe eine Applikation mit 3 Formularen ein Hauptformular und 2 unter formularen. Von den Hauptformularen(F1) kann ich die erste Unterformular wählen (F2) oder der 2te Unterformular(F3), jetzt kommt das problem, wenn ich zb von hauptformular zu den erst unterformular gehe und will zurück in hauptformular kommt immer ein fehler meldung "Diese Formular erhält kein Fokus". Meine Frage wie kann ich den Fokus aktivieren???? Danke in Voraus poter |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
Ohne Code, wie du die Formulare aufrufst, wird es schwierig dir zu helfen. Evtl. hilft dir ![]() Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Bsp. Edit1:
Delphi-Quellcode:
Edit1.SetFocus;
|
Re: Wie Aktiviere ich den Fokus bei Formularen
so rufe ich den formular:
procedure TForm1.Button1Click(Sender: TObject); begin Form2.ShowModal; end; |
Re: Wie Aktiviere ich den Fokus bei Formularen
Zitat:
|
Re: Wie Aktiviere ich den Fokus bei Formularen
Wenn du Form2 modal aus Form1 geöffnet hast, kannst du nur zurück zu Form1, wenn du Form2 schließt.
|
Re: Wie Aktiviere ich den Fokus bei Formularen
Zitat:
Wenn du aber in beiden forms gleichzeitig arbeiten willst musst du Form2 nur mit Form2.Show; öffnen |
Re: Wie Aktiviere ich den Fokus bei Formularen
Zitat:
|
Re: Wie Aktiviere ich den Fokus bei Formularen
Nicht so ganz, die Hauptform muss immer offenbleiben gilt als steuerform und wenn ich form1 zu form2 gehe mit From2.ShowModal; funktioniert prima und von Form2 zu Form3 mit Form3.ShowModal; funktioniert aber wenn ich von Form3 zu Form2 zurückkehre mit Form3.Close; From2.Showmodal;
dann kommt die fehler melden wegen den Fokus. es ist bestimmt ein syntax fehler oder? |
Re: Wie Aktiviere ich den Fokus bei Formularen
das From2.Showmodal ist zuviel, da Form2 noch modal geöffnet ist!
|
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
Also du machst folgendes: Form1 (HauptFormular) --> Form2.ShowModal --> Form3.ShowModal --> Form3.Close? Dann solltest du ohne weitere Aktionen immer noch Form2 sehen... Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
wie machst du das...
Aus F1 : Form2.ShowModal; Aus F2 : Form3.ShowModal; Aus F3 : Form3.Close; Dann ist F2 Modal sichtbar bis du es schließst sollte eigentlich genauso gehen oder versteh ich was falsch? [menno jetzt wast du schneller] |
Re: Wie Aktiviere ich den Fokus bei Formularen
Danke jungs Funktioniert, ich glaube daß problem lag bei ShowModal.
ich habe jetzt Show geschrieben und es kommt kein meldung Viel Danke :dance: |
Re: Wie Aktiviere ich den Fokus bei Formularen
So möchte ich es haben:
F1->F2 (F1 ist da auf) und F2->F1 (im F2 habe ein Button mit Close;) F1->F2->F3(Von F2 kann ich F3 Aufrufen mit Show;) F3-> F2(Habe close; bei F3) folgendes problem konnte auf mich zukommen und ich weisse es nicht wie ich es lösen kann? ich kann von F1->F3 und wenn ich von F3 zu F2 gehen will, ist dann F2 nicht Aktiv, ist es möglich ein Funktion zu schreiben, das überprüft ob das fenster auf, wenn ja hin gehen und wenn nein erstmal fenster erstmal auf machen???? danke in voraus |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
Vielleicht hilft dir die Visible-Eigenschaft weiter? Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Visible-eigentschaft??
wie kann ich mir es synthax-massig vorstellen? |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
Delphi-Quellcode:
Bin mir aber nicht sicher, ob das klappt, wenn Form3 Modal geöffnet ist....
if Form2.Visible then....
Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Dürfte bei modalen Formularen nicht funktionieren. Das Programm wäre dann ja nicht meher richtig bedienbar.
|
Re: Wie Aktiviere ich den Fokus bei Formularen
wenn ich von F3 zu F2 gehen möchte so ein Procedure kann prüfen ob F2 aktiv ist?
procedure TForm1.ButtonClick(Sender: TObject); begin if Form2.Visible = False then Form2.Visible := True; Form2.BringToFront; end; Sollte ich dann Show statt ShowModal benutzen??? Danke Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Ja, Grund siehe oben.
ShowModal stellt ja nur sicher das die Form geschlossen werden muß, bevor man weitere Änderungen an der "rufenden" Form ändern kann. |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
Du solltest keine Vergleich mit =false machen - das kann unliebsame Nebeneffekte haben. Prüfe auf if not .... Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hallo frederic,
ich verstehe nicht so ganz was du meinst. Soll ich prüfen if not form1:= true???? oder wie soll ich es syntax-massig darstellen? |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
unabhängig vom restlichen Code: Nie so:
Delphi-Quellcode:
sondern:
if boolvar = true then ....
bzw. if boolvar = false then ....
Delphi-Quellcode:
if boolvar then ....
bzw. if not boolvar then .... Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Danke jungs es funktioniert, ihr seid die Besten
Poter |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
Vielleicht kannst du ja noch Posten, wie du es gemacht hast. Wenn dann nochmal jemand das Problem hat, dann findet er so vielleicht schneller eine Lösung... Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hallo Frederic,
ich habe es doch einfach gelöst, da ich immer zwischen fromular navigieren musst. habe ich Formular.Show; benutze statt ShowModal und ein Button in jede Formular gebaut mit close; Also von F1->F3(Show)F3->F2(mit Show, da F2 verschwindet in Hintergrund) oder F1->F2 und F2->F3. Close befehl funktioniert bei F1 und F2 prima aber bei F3 kämpfe ich gerade damit Weil ich auch ein Button gebaut habe mit Close; bzw Form3.Close bekomme ich jetzt ein fehler wieder " deaktivierte Fenster erhalten kien Fokus " Ich habe auch Btbn eigenschaft Kind:BK Close verwendet aber der Fehler ist immer noch da. hättest du ein tipp? |
Re: Wie Aktiviere ich den Fokus bei Formularen
Hi!
Ehrlich gesagt nicht. Kenne auch die Meldung nicht. Wie genau sieht denn dein Code beim Schließen aus? Nur ein Form3.Close? Ciao Frederic |
Re: Wie Aktiviere ich den Fokus bei Formularen
Ich verstehe es auch nicht so
ich gehe von F1->F2->F3 alles mit Show; und Zurück F3->F2-F1 mit close geht prima ich kann auch von F1->F3->F2 mit Show; aber wenn ich mit Close F2 und F3 schliessen will,dann habe ich den Rock n Roll |
Re: Wie Aktiviere ich den Fokus bei Formularen
Poste mal den entsprechenden Code der Akrtivierung und deines Close.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:26 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