ComboBox / List Box schließt Form2
-
Hallo, ich hab gerade erst mit Forms angefangen und hab gleich mal ein Problem.
Ich hab 2 Forms, Form1->Button1 startet Form2, in Form2 sind vier Komponenten zur Deiteiauswahl 1) TFileListBox 2)TFilterComboBox 3)TDirectoryListBox
4) TDirectoryComboBox? weiß nicht mehr genau wie die heißt aber ich glaub ihr wißt was ich mein.
Wenn ich jetzt aber in der Verzeichnis ComboBox ein anderes auswählen will stürzt das Programm ab, das gleiche bei einem Doppelklick in die TDirectoryListBox. Ich hab Das Ganze zu einer Gruppe zusammengefasst.
Ich hatte das ganze schon in der Form1 da hatt es Funktioniert allerdings ohne Gruppierung.
Kann das daran Liegen das es Abstürzt?
Konkrete Frage: Warum stürzt es ab??Hoffe ihr könnt mir helfen.
-
Kann das daran Liegen das es Abstürzt?
Nein
Konkrete Frage: Warum stürzt es ab??
Weil irgendwo ein Fehler ist -> Ohne Code o.a. was soll man sagen??
Debugge dein Programm und suche die Absturzstelle
-
[quote="Christian411"]
Konkrete Frage: Warum stürzt es ab??
Weil irgendwo ein Fehler ist -> Ohne Code o.a. was soll man sagen??
Was soll ich den für einen Code Posten?
Außer dem Code den die IDE erzeugt, wenn man Komponenten einfügt, steht doch noch nichts drin.
-
Hallo??
Ist die Frage so dumm das mir keiner Helfen will oder bin ich wirklich der einzigste der so ein Problem hat???zu früh gepostet.
-
Hallo
Die Komponenten des Builder stürzen nicht von selbst ab.
Überprüfe mal, was in den Eigenschaften steht, die jeweils auf das logis h zugeordnete Control zeigen (TDriveComboBox::DirList, TFileListBox::DirLabel, TFileListBox::FileList). Dort könnten noch ungültige Verweise stehen.bis bald
akari
-
In TDriveComboBox::DirList steht TDirectoryListBox
In TDirectoryListBox::FileList steht TFileListBox
In TFilterComboBox::FileList steht TFileListBoxhab ich noch was vergessen oder sind die zuweisungen falsch?
Ich hab immer die zuweisung genommen die er mir angeboten hat.Danke schonmal für die Hilfe
-
Hallo
Die Vorauswahlen dieser Eigenschaften sind schon okay, nur ist darauf zu achten wenn später so verlinkte Controls gelöscht werden, das die Eigenschaften auch zurück gesetzt wurde.
Ansonsten ist dein Fehler nicht nachvollziehbar.
bis bald
akari
-
akari schrieb:
Hallo
nur ist darauf zu achten wenn später so verlinkte Controls gelöscht werden, das die Eigenschaften auch zurück gesetzt wurde.
bis bald
akariwie überprüfe ich das?
-
Hallo
Zur Entwurfszeit mit dem Objektinspektor schauen, das die genannten Eigenschaften zu jeweils gültigen und vorhandenen Controls führen.
Es darf dort kein Name eines Controls stehen, das es nicht mehr gibt oder das umbenannt wurde.bis bald
akari
-
OK ich schau mir das nochmal genau an.
Nochmal Danke für die Hilfe
-
Ich weiß jetzt was schuld ist, "Der Timer" aber ich weiß noch nicht warum,
hier mal der Code.
Wenn ich ihn entferne funzt alles.void __fastcall TForm1::Timer1Timer(TObject *Sender) { bool check=false; fstream License1("V:\Library\Config\Userlicf.ulc", ios_base::in); if(License1.good()){ check=true; License1.close(); } fstream License2("Userlicf.ulc", ios_base::in); if(License2.good()){ check=true; License2.close(); } if(!check){ Form1->Close(); } }Hat jemand eine idee??
-
Vermutlich wird check nie wahr.
Der Begriff Debugger sagt dir etwas?
-
Wenn check nie Wahr wäre, würde sich das Programm nach 1 sec wieder schließen
und nicht erst wenn ich in der Form2 TDriveComboBox änder.
-
Benutze den Debugger!
Vermutlich ändert sich durch die Verwendung der DriveComboBox das Arbeitsverzeichnis.
Benutze den Debugger!
Da du bei der zweiten Prüfung keinen Pfad angegeben hast wird die Datei vergeblich in eben dem geänderten Arbeitsverzeichnis gesucht, die Funktion schlägt fehl, check bleibt false.
Benutze den Debugger!
-
Soweit zum Thema:
Außer dem Code den die IDE erzeugt, wenn man Komponenten einfügt, steht doch noch nichts drin.
-
OK ich bekenne mich als schuldig. Sorry
Danke für die Hilfe.
PS:: In Zukunft werde ich zuerst den Debugger benutzen bevor ich dumme fragen stelle.