|
Martinuk |
Forum-Century
|
|
Beiträge: 208
|
|
|
|
Anmeldedatum: 18.04.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.03.2013, 19:45
Titel: GUI - Resize Fcn
|
|
|
|
|
Hallo,
ich habe eine GUI mithilfe des GUIDE's erstellt. Unter GUI Options > Resize behavior habe ich Other (Use ResizeFcn) eingestellt.
Ich möchte nämlich, dass wenn der Benutzer im rechten oberen Eck des Figures das Figure maximieren kann. Damit vergrößere ich das Figure auf eine von mir vorgebene Größe (Position). Das funktioniert soweit alles wie es sollte.
Nur wird die ResizeFcn aus welchen Grund auch immer schon in der OpeningFcn aufgerufen, d.h. nach dem Starten öffnet sich das GUI sofort in der maximierten Größe. Dies möchte ich aber nicht haben, erst wenn der Benutzer das Fenster maximiert soll dieses vergrößert werden.
Hat jemand vllt. einen Tipp was hier falsch läuft? Die ResizeFcn ist nirgends in der OpeningFcn zu finden. Beim debuggen ist mir aufgefallen, dass dieser Vorgang aber irgendwo in der OpeningFcn oder gleich danach passiert.
Wie kann ich dies unterbinden?
Wäre cool wenn jemand dazu einen Tipp hätte.
Besten Dank.
|
|
|
|
|
Gast100 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.03.2014, 13:35
Titel:
|
|
"ResizeFcn executes whenever you resize the figure and when the figure is created"
Eine Lösung für dein Problem habe ich leider auch nicht.
|
|
|
denny |
Supporter
|
|
Beiträge: 3.853
|
|
|
|
Anmeldedatum: 14.02.08
|
|
|
|
Wohnort: Ulm
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 27.03.2014, 13:47
Titel:
|
|
Hallo
Also DRAWNOW kann z.B. verursachen dass Resize-Fcn aufgerufen wird
Hast du so was in der OpeningFcn? Ohne Code ist das daher schwer zu sagen. Kannst du ein lauffähiges Minimalbeispiel erzeugen, wo man dieses Verhalten nachvollziehen kann?
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 29.03.2014, 23:20
Titel: Re: GUI - Resize Fcn
|
|
Hallo Martinuk,
Beim Öffnen einer Figure wird tatsächlich die ResizeFcn aufgerufen.
Du könntest z.B. versuchen die ResizeFcn beim Erstellen der Figure in GUIDE leer zu lassen und sie erst dynamisch am Ende der OpeningFcn zu setzen.
Auf der anderen Seite ist es nicht direkt logisch, den Maximieren-Knopf für etwas zu verwenden, das nicht Maximieren ist.
Möchtest Du, dass eine bestimmte Maximal-Größe nicht überschritten wird?
Gruß, Jan
|
|
|
nils77 |
Forum-Newbie
|
|
Beiträge: 2
|
|
|
|
Anmeldedatum: 31.03.14
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2013b
|
|
|
|
|
|
Verfasst am: 14.04.2014, 07:54
Titel:
|
|
Hallo,
ich hab auch das Problem, dass die Resizefcn beim ersten öffnen der GUI schon ausgeführt wird. Ich möchte, dass die Resizefcn erst aktiv wird, wenn ich auf den Maximieren-Button klicke.
Ich habe nicht genau verstanden, was du mit
Zitat: |
erst dynamisch am Ende der OpeningFcn zu setzen |
meinst. Kannst du mir da ein bisschen auf die Sprünge helfen?
EDIT:
Und ich habe jetzt ein neues Problem: Wenn ich die ResizeFcn aktiviere, wird sie bei mir ca. 8 mal direkt hintereinander ausgeführt. Habe es dann nochml mit einem einfachen Code getest und das gleiche Problem gehabt
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 15.04.2014, 00:32
Titel:
|
|
Hallo nils77,
Also "Leerlassen" den ResizeFcn ist klar oder?
Und dann am Ende der OpeningFcn einfügen:
Oder wie Deine Resize-Funktion heißt. Statt den Ancestor zu verwenden, kannst Du den Handle der Figure auch irgendwie anders heraus finden.
Zitat: |
Ich möchte, dass die Resizefcn erst aktiv wird, wenn ich auf den Maximieren-Button klicke. |
Das ist nicht einfach. Bei allen anderen Resize-Events soll die resizeFcn nicht aufgerufen werden? Und wenn man das Fenster manuell bis auf die Maximal-Größe aufzieht?
Zitat: |
Und ich habe jetzt ein neues Problem: |
Heißt das, dass das vorherige Problem gelöst ist?
Zitat: |
Wenn ich die ResizeFcn aktiviere, wird sie bei mir ca. 8 mal direkt hintereinander ausgeführt. |
Die Ursache dafür kann ich nicht raten. Wie aktivierst Du sie denn und was geschieht danach?
Was hat es mit dem "z==0, z=z+1" auf sich?
Gruß, Jan
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|