ComboBox / List Box schließt Form2



  • [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 TFileListBox

    hab 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
    akari

    wie ü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.


Anmelden zum Antworten