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

Popup Menu soll Eingabefenster generieren

 

emanuelarth
Forum-Anfänger

Forum-Anfänger


Beiträge: 10
Anmeldedatum: 13.11.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.04.2017, 14:21     Titel: Popup Menu soll Eingabefenster generieren
  Antworten mit Zitat      
Hi Leute,

bin in Sachen GUI noch ein Anfänger Sad

Ich habe folgendes Problem mit dem Popup Menü:



Ich möchte eine Maßkette mit 5 Einzelmaßen aufstellen.
Die Forderung wäre also: Ich wähle im Popup-Menü die Zahl 5 aus (entspricht 5 Einzelmaßen)
Dann bekomme ich 5 Zeilen in die Parameter der Einzelmaße eintrage. Welchen Wert das Maß hat, in welche Richtung es wirkt (+-1), die obere Toleranzgrenze und die untere Toleranzgrenze. Zudem soll dann in jeder Zeile ein weiteres Popup Menü erscheinen, in welches ich meinen Verteilungstyp eingebe. Hier sollte dann stehen "Normalverteilung", "Dreieckverteilung", "Gleichverteilung" oder "Trapezverteilung". Sofern z.B "Trapezverteilung gewählt wird, soll dann wieder ein Eingabefenster erscheinen, in welches ich das Seitenverhältnis des Trapezes eingeben kann.

Der Eingabebereich sollte also einer Tabelle ähneln. In jeder Zeile sollen 4 freie Felder stehen, in die ich meine Parameter eingebe. Am ende der Zeile dann das nächste Popup Fenster in dem ich meinen Verteilungstyp auswähle. Je nach Verteilungstyp soll dann ein weiteres Eingabefeld erscheinen.


Die prinzipielle Frage ist also: Wie bekomme ich nach der Auswahl meiner Anzahl der Maßkettenglieder die gewünschten Eingabefelder bzw das Popup Menü für die Verteilung?
Ist hier das Arbeiten mit Popup überhaupt sinnvoll? Oder wäre hier eine Tabelle besser?(Falls das möglich ist?)

Ich hoffe ihr könnt mir Gedankenanregungen geben bzw. mir sagen mit welchem Verfahren ich besser arbeiten kann?

Vielen Dank Very Happy Smile
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: 12.04.2017, 10:01     Titel: Re: Popup Menu soll Eingabefenster generieren
  Antworten mit Zitat      
Hallo emanuelarth,

Ich kann mir noch nicht vorstellen, wonach Du genau suchst. Wie wäre es, Du probierst es einfach mal aus? Entweder male es mit Stift und Papier auf oder setze es gleich in GUIDE um.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 10
Anmeldedatum: 13.11.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.04.2017, 11:44     Titel:
  Antworten mit Zitat      
Hi,

ich habe das jetzt anders gemacht.
Ich habe mir in Excel eine Datentabelle erstellt die ich immer in Matlab lade, wenn ich in der GUI den Berechnungsbutton drücke.

Nun habe ich jedoch eine andere Frage:

Damit ich je nachdem wie viele Zeilen meine Excel Tabelle hat parametrisch rechnen kann, habe ich meinen Code so geschrieben:




for i=1:Zeilenanzahl

[m,t(i),sigma(i)]=function(A(:,i:i), D(:,i:i), s(:,i:i))


m(i)=[m(i)] %--> Vektor der die einzelnen Vektoren enthalten soll (-->Matrix?)
t(i)=[t(i)] %--> Vektor in dem alle Ergebnisse für t gespeichert sind
Sigma(i)=[Sigma(i)] %--> Vektor in dem alle Ergebnisse für Sigma gespeichert sind


end


Ich habe im Vorfeld die1. Spalte meiner Excel Tabelle in den Vektor A gespeichert. Die 2. Spalte in D und die 3. Spalte in s.
Nun zieht Matlab nach und nach die i. Zahl von A, B und s aus dem Vektor und rechnet hier die Werte m, t und Sigma aus.

Mein Problem ist nun folgendes:
t und Sigma sind einzelne Zahlen. Hier rechnet die Funktion also immer einer Zahl aus und speichert sie. Am Ende erhalte ich dann einen Vektor in dem ich die einzelnen Ergebnisse zum Weiterrechnen vorliegen habe

m ist aber keine Zahl sondern selbst ein Vektor. Bei jedem durchlauf der Funktion werden hier 100 Werte berechnet. Wie kann ich nun diese Vektoren speichern?
Ich muss also versuchen eine Matrix zu erzeugen oder? 1. Spalte die Vektoren der 1. Berechnung. 2. Spalte die Vektoren der 2. Berechnung usw.
Wenn ja, wie füge ich nach und nach die erhaltenen Vektoren zusammen?

Ich möchte die Vektoren die ich dort erhalte anschließend miteinander Falten.


Dankeschön Smile


EDIT:
Das mit der Faltung habe ich nun gelöst, sodass ich meine erhaltenen Vektoren m abhängig von meiner Excel Tabelle falten kann.
Mein Problem ist jedoch nach wie vor der Schritt, bei dem ich nach und nach meine erhaltenen Vektoren in eine Matrix speichern möchte.
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.