Form1 lässt sich nicht breiter einstellen



  • Hallo,

    ich habe eine Anwendung programmiert bei der Form1 eine Breite von 1300 hat. Läuft auf Rechner 1 problemlos. Dann habe ich das ganze Projektverzeichnis auf Rechner 2 kopiert. Dieser Rechner hat einen kleineren Bildschirm. Das Programm läuft, aber Form1 hat jetzt nur noch eine Breite von 1036, und lässt sich auch nicht grösser einstellen. Wenn ich im Form-Editor bei Width eine Zahl grösser als 1036 eingebe, dann wird diese Eingabe nicht akzeptiert. Ich kann Form1 auch mit der Maus nicht breiter ziehen, bei 1036 ist Schluss. Woran kann das liegen? MaximumSize ist grösser eingestellt, daran liegt es nicht.

    Gruß
    Michael

    P.S. Das Problem betrifft alle Projekte (C# und C++) auf diesem Rechner. Im Form Designer kann ich kein Formular breiter als 1036 machen. Habe keine Ahnung warum das so ist, denn auf dem anderen Rechner geht es.



  • MaximumSize wird bestimmt irgendwo im Code auf 1036 gesetzt.



  • lolalter schrieb:

    MaximumSize wird bestimmt irgendwo im Code auf 1036 gesetzt.

    Nein. Das Problem tritt auch dann auf, wenn ich ein ganz neues Projekt aufmache. Ich kann das Formular nicht breiter als 1036 machen.

    Gruß
    Michael

    P.S. Auf meinem anderen Rechner (mit großem Bildschirm) kann ich das Formular nicht breiter als 1932 einstellen. OK, das stört mich nicht. Aber auf dem Rechner mit kleinem Bildschirm würde ich schon gerne wissen, wie ich das Formular größer als 1036 machen kann.



  • Passiert das bei jedem Projekt?
    Setz mal ein neues Projekt auf. Einfach eine leere Form.

    Ansonsten mal das kopierte Projekt bereinigen und neu übersetzen. Der Designer hat auch ein paar Bugs.



  • lol sorry ich sehe gerade dass du das ja schon getestet hast (neues Projekt).



  • micha7 schrieb:

    lolalter schrieb:

    MaximumSize wird bestimmt irgendwo im Code auf 1036 gesetzt.

    Nein. Das Problem tritt auch dann auf, wenn ich ein ganz neues Projekt aufmache. Ich kann das Formular nicht breiter als 1036 machen.

    Gruß
    Michael

    P.S. Auf meinem anderen Rechner (mit großem Bildschirm) kann ich das Formular nicht breiter als 1932 einstellen. OK, das stört mich nicht. Aber auf dem Rechner mit kleinem Bildschirm würde ich schon gerne wissen, wie ich das Formular größer als 1036 machen kann.

    Wäre es schlimm wenn man die Form an sich scrollen könnte? Ist 1024 zufälligerweise die Bildschirmbreite?



  • Hallo,

    Rhombicosidodecahedron schrieb:

    Wäre es schlimm wenn man die Form an sich scrollen könnte? Ist 1024 zufälligerweise die Bildschirmbreite?

    Ja, die Bildschirmbreite ist 1024. Kann man mit Visual Studio keine Form's erzeugen, die breiter als der Bildschirm sind?

    Gruß
    Michael



  • Das ist generell eine Beschränkung von Windows (egal welche Programmiersprache, solange intern die WinAPI verwendet wird), d.h. Fenster können nicht größer als die eingestellte Bildschirmauflösung sein.

    Dann mußt du entweder vorschreiben, daß eine Mindestauflösung vorhanden sein muß oder aber dein Programm entsprechend anpassen (Control Eigenschaft Dock und Anchor).



  • Th69 schrieb:

    Das ist generell eine Beschränkung von Windows (egal welche Programmiersprache, solange intern die WinAPI verwendet wird), d.h. Fenster können nicht größer als die eingestellte Bildschirmauflösung sein.

    Dann mußt du entweder vorschreiben, daß eine Mindestauflösung vorhanden sein muß oder aber dein Programm entsprechend anpassen (Control Eigenschaft Dock und Anchor).

    ok, dann mache ich das jetzt so dass die Größe der Form1 zur Laufzeit verändert werden kann. Dazu habe ich eine Frage:
    Wie kann ich erreichen, dass die Form immer ein bestimmtes Höhe/Breite Verhältnis hat? Mit anderen Worten, wenn die Breite verändert wird dann möchte ich die dazu passende Höhe berechnen. Meine Idee war, bei Form1_SizeChanged die Höhe zu berechnen und entsprechend zu setzen, aber das geht nicht.

    Gruß
    Michael



  • micha7 schrieb:

    Meine Idee war, bei Form1_SizeChanged die Höhe zu berechnen und entsprechend zu setzen, aber das geht nicht.

    Hab meinen Fehler schon gefunden. Der Zugriff erfolgt nicht über Form1.height sondern über this.height.

    Gruß
    Michael


Log in to reply