Fenstergröße nicht ändern



  • Die Änderbarkeit der Formulargröße kann mit verschiedenen Borderstyles eingestellt werden. Alternativ gibt es Constraints, mit denen man minimale oder maximale Abmessungen angeben kann.
    Die Nichtverschiebbarkeit ist z.B. über BorderStyle=bsNone zu erreichen. Leider fehlt damit auch der Rahmen. Andere Möglichkeiten kenne ich dazu nicht.



  • auf ToolWindow umstellen

    greetz KN4CK3R



  • danke.



  • Wenn ich Resize=false; einfüge, zeigt er mir "[C++ Fehler] MikrocomputerAnimation.cpp(21): E2235 Elementfunktion muß aufgerufen oder ihre Adresse übernommen werden" an. Wie muss ich es einfügen, damit es funktioniert?
    Danke für eure Antwort!
    Lg



  • RandomAccess85 schrieb:

    im OnCanResize-Event des Fensters

    Resize=false;
    

    Hast Du es an der richtigen Stelle eingefügt?



  • Ich habs unter "void __fastcall THauptfenster::FormCreate(TObject *Sender)" eingefügt.
    Lg

    P;S: Bin immer noch am üben mit dem C++Builder. Muss mich bei der Arbeit praktisch ohne Hilfe ins Programm einarbeiten. Danke für deine Hilfe!



  • Hallo

    Nicht wahllos irgendwo einfügen. Sondern dort wo RandomAccess85 gesagt hat : Im Event TForm::OnCanResize

    bis bald
    akari



  • Srry, wie kann man ein Event einfügen? Das verstehe ich nicht ganz.

    Hab glaub einen anderen Weg gefunden. Auf die Form klicken und im Objektinspektor unter BorderStyle "BsSingle" auswählen und unter BorderIcons alle Werte auf "false" setzen. Mit BorderStyle erreicht man, dass die Grösse des Fensters nicht verändert werden kann, der Fensterrand jedoch doch noch vorhanden ist. Wenn man bei BorderIcons alle Werte auf "false" setzt werden keine Fenstericons mehr angezeigt, z.B. minimieren, maximieren, schliessen, u.s.w. . Auch das PopupMenu der Fensterleiste kann so deaktiviert werden.
    Habe aber noch ein Problem, dass man mit Alt+F4 das Fenster doch noch beenden kann. Habt Ihr eine Idee, wie man auch dies verhindern könnte?
    Lg



  • Hallo

    Srry, wie kann man ein Event einfügen? Das verstehe ich nicht ganz.

    Zur Entwurfzeit das entsprechende Formular auswählen, im Objektinspektor auf den Tab Events schalten, in der Liste den Eintrag für den gewünschten Event suchen und Doppelklick auf die leere Fläche daneben. (Eigentlich genauso wie du den OnCreate-Event erstellst hast)

    Habe aber noch ein Problem, dass man mit Alt+F4 das Fenster doch noch beenden kann. Habt Ihr eine Idee, wie man auch dies verhindern könnte?

    Siehe den Event TForm::CanCloseQuery. Ich hoffe du erkennst selber die Parallele zu Resize.

    bis bald
    akari



  • Vielen Dank!! "CanClose = false" ist die Lösung. Das mit den Events kenne ich jetzt auch. Hätte wirklich nicht gewusst, wie das geht! Danke.
    Noch eine Frage:
    Gibt es so was ähnliches wie ein Label, in dem man jedoch mehrzeilig schreiben kann und was kann man gegen das Flackern z.B. beim Zeichnen eines Sinus machen?
    Vielen Dank für eure Antworten schon im Voraus!
    Bis bald!



  • Hallo

    "Ein Thema ein Thread, ein Thread ein Thema". Also mach bitte entsprechend neue Threads auf (wenn dir die üblichen Quellen nicht weiterhelfen)

    bis bald
    akari


Anmelden zum Antworten