WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Figure vergrößern - Position der Button verändern

 

Laale
Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 15.10.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.04.2017, 15:00     Titel: Figure vergrößern - Position der Button verändern
  Antworten mit Zitat      
Hallo ihr Lieben,

ich google mir schon die Finger bunt und habe schon einiges ausprobiert.
Ich habe eine GUI, darauf befinden sich button. Beim Vergrößern des Fensters sollen diese sich mitbewegen.

Auszug aus meiner GUI-Klasse:

Code:
 function obj = GUI()
                obj.fig = figure();
%             obj.units = obj.fig.Units;  
%             obj.fig.Units = 'n ormalized';

            button_help = uicontrol();
            button_help.Style = 'pushbutton';
            button_help.Position = [470 15 75 20];
end
 


Ich habe es über units probiert, aber das bringt auch nichts. Wie mache ich es, dass die Position der Button sich proportional zur Fenstergröße ändert? Ideen wären prima!

Vielen Dank Smile
Private Nachricht senden Benutzer-Profile anzeigen


Laale
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 15.10.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.04.2017, 15:17     Titel:
  Antworten mit Zitat      
units scheint nur Einfluss auf die fig-Größe zu haben. Ich muss auf die aktuelle Größe der fig zugreifen und abhängig davon meine Button positionieren, richtig?
Private Nachricht senden Benutzer-Profile anzeigen
 
Laale
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 15.10.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 29.04.2017, 16:43     Titel:
  Antworten mit Zitat      
funktioniert leider nur bedingt.

Code:

 function obj = GUI()
            obj.fig = figure();
            set(obj.fig, 'units', 'normalized', 'position', [0.05 0.05 0.75 0.75])
            pos  = get(obj.fig, 'position');

            button_help = uicontrol();
            button_help.Style = 'pushbutton';
            button_help.Position = [pos(1)-5 pos(2)+500 75 20];
end
 

der button bewegt sich zwar mit, verschwindet aber ab einer gewissen Fenster-Größe

Wie kann ich das ändern?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 01.05.2017, 15:07     Titel:
  Antworten mit Zitat      
Hallo Laale,

Du hast bisher noch nicht beschrieben, was du genau erreichen möchest. Wo soll der Button genau platziert sein?
Mit 'normalized' Units ist sowohl die Position also auch die Größe proportional zum Fenster. Wenn Du stattdessen die Größe fest lassen möchtest und die Position relative zum Fenster, brauchst Du eine ResizeFcn für die Figure, in der Du die Button-Position anpasst: In der ResizeFcn kannst Du zunächst die Position der Figure abfragen, so dass Du die neue Größe erhältst und dann die Button-Position anpassen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Laale
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 15.10.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 02.05.2017, 07:09     Titel:
  Antworten mit Zitat      
Guten Morgen und vielen Dank, Jan! Smile

Das hat mir schon sehr geholfen Wink

LIebe Grüße,
Laale
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.