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

Variable Gui - Größe je nach Anzahl der Auswahl

 

Hänsel
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 01.02.11
Wohnort: Mannheim
Version: ---
     Beitrag Verfasst am: 18.03.2011, 09:35     Titel: Variable Gui - Größe je nach Anzahl der Auswahl
  Antworten mit Zitat      
Hallo Zusammen,
ich habe folgendes Problem:
Ich würde gerne ein GUI erstellen, ohne GUIDE. Mein Problem ist jetzt, das der Inhalt je nach vorherigem Auswahlstatus variieren kann.
Genauer, es können 1 bis x Signale ausgewählt werden, je nach Anzahl der Signale sollen je ein Textfeld, ein radiobutton usw in einer Buttongroup erscheinen!
Wie kann ich dies erreichen. Muss ich das über eine for Schleife i=1:x machen? Passt sich die Buttongroup größe dann an?
Bin für jede Hilfe Dankbar
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 18.03.2011, 11:54     Titel:
  Antworten mit Zitat      
Hallo
Zitat:
Muss ich das über eine for Schleife i=1:x machen?

Ja, du muss ja Position für jede Textbox und Radiobutton in der Schleife berechnen.
Zitat:
Passt sich die Buttongroup größe dann an?

Nein, die Größe muss man manuell anpassen.
Du kennst doch die Größe von einem Textfeld/Radiobutton, und deren Anzahl.
Daraus kannst du doch die Größe von Buttongroup bestimmen.

Wenn du maximal mögliche Anzahl von Signalen kennst. Dann kannst du vorraus für Maximale Anzahl die Textboxen erzeugen und auf unsichtbar stellen. Und dann immer nur bestimmte Anzahl sichtbar machen.
Private Nachricht senden Benutzer-Profile anzeigen
 
Marco H.
Forum-Guru

Forum-Guru


Beiträge: 404
Anmeldedatum: 12.11.10
Wohnort: Dortmund
Version: 2010a/2012b
     Beitrag Verfasst am: 19.03.2011, 04:02     Titel:
  Antworten mit Zitat      
Hey,
wobei das natürlich sehr schnell, z.B. bei 30 Signalen, zu einer ziemlich großen figure führen könnte, die vll garnicht mehr lesbar auf den Bildschirm passt. Eine Alternative wäre, eine uitable mit einer char Spalte als Textersatz und n logic (checkbox) Spalten (Radiobuttonersatz) die man ja nach lust und laune im cell_edit_cb so programmieren kann, dass nur jeweils eine Checkbox pro Zeile ausgewählt werden kann...
Dann gibs auch keine Begrenzung der Anzahl und über die Positionierung brauch man sich auch keine Gedanken machen...

MfG Marco
Private Nachricht senden Benutzer-Profile anzeigen
 
Hänsel
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 59
Anmeldedatum: 01.02.11
Wohnort: Mannheim
Version: ---
     Beitrag Verfasst am: 21.03.2011, 11:19     Titel:
  Antworten mit Zitat      
Danke für die Antworten,

ich werde die sache jetzt über eine for Schleife versuchen. Ich habe da nur ein Problem mit meiner Callback Benennung

Ich erstelle meine Grafik so:
Code:

for i=1:leng_sel
 text_a=uicontrol('Style','Text','String',Data_curveName_be(sel(i)),'Position',[x y  l b],'HorizontalAlignment','left','Callback',@String_callback)
 

Wie muss ich denn den 'Callback' Befehl schreiben, damit String immer um eins erhöht wird also String1, String2?
Private Nachricht senden Benutzer-Profile anzeigen
 
_Peter_
Moderator

Moderator


Beiträge: 537
Anmeldedatum: 08.12.10
Wohnort: ---
Version: 7.10, 2010a
     Beitrag Verfasst am: 21.03.2011, 13:03     Titel:
  Antworten mit Zitat      
so?
Code:

for i=1:leng_sel
 text_a=uicontrol('Style','Text',['String' num2str(i)],Data_curveName_be(sel(i)),'Position',[x y  l b],'HorizontalAlignment','left','Callback',@String_callback)
 

_________________

Gruß
Peter
_________________
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht? Oder der MATLAB Hilfe?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
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 - 2025 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.