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

Werte in Edit Text aktualisieren, nach Auswahl in Popup

 

Mister_Q
Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 11.09.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.09.2018, 10:59     Titel: Werte in Edit Text aktualisieren, nach Auswahl in Popup
  Antworten mit Zitat      
Hallo zusammen,

ich habe in einem GUI einige „Edit Text“ Felder, in denen Werte ausgegeben werden. Nun habe ich zusätzlich noch ein Popup Menü, in dem unterschiedliche Fälle aufgelistet sind. Mein Ziel ist es, dass nach einer Auswahl im Popup Menü die Werte in den Edit Textfeldern dementsprechend aktualisiert werden.
Nun meine Frage:
Muss ich in dem Callback des Edit Text über „get“ abfragen, welches Value im Popup gerade gewählt ist und dann in Abhängigkeit dessen über „set“ den entsprechenden Wert im Edit Text ausgeben lassen? Also in etwa so:
Code:
function Popup_Callback(hObject, eventdata, handles)
    % Pop up Menü
    [~,txt,~] = xlsread('\input\input_data.xlsx');
    lc_name   = txt(3:end,2);
    set(handles.Popup,'String',lc_name);

function Edittext_Callback(hObject, eventdata, handles)
    P_Value = get(handles.Popup,'Value');
    for m = 1:handles.p.ne
        Edittext_plot_1(:,m) = data_conv(handles.Wertebox{P_Value,1}{m,1}.Minimum);
    end
    Edittext_plot = Edittext_plot_1(:);
    Edittext.String = num2str(zero_mean(Edittext_plot),'%.2f');
    set(Edittext.String);


Oder wird dies alles über das Callback im Popup Menü geregelt? Denn momentan funktioniert keine Variante bei mir. Vielleicht muss man dafür auch zusätzlich noch einen Push Button einbauen, über den dann nach Auswahl im Popup Menü der Befehl erteilt wird, dass im Edit Text die Werte aktualisiert werden.

Vielen Dank im Voraus!!!
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.435
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 14.09.2018, 12:43     Titel:
  Antworten mit Zitat      
Hallo,

in den Callback sollte immer alles, was unmittelbar nach einer Interaktion mit einem Element ausgeführt werden soll.

Zitat:
Mein Ziel ist es, dass nach einer Auswahl im Popup Menü die Werte in den Edit Textfeldern dementsprechend aktualisiert werden.

Das würde ich so verstehen, dass du im Callback des Popupmenüs bzw. seiner SelectionChangeFcn die Inhalte der Edit-Felder setzen musst.

Zitat:
Denn momentan funktioniert keine Variante bei mir.

Bitte immer konkret beschreiben, wie sich das "Nicht-Funktionieren" äußert.

Grüße,
Harald

P.S.: ich vermute, du verwendest GUIDE. App Designer kann deutlich einfacher sein.
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Mister_Q
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 11.09.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.09.2018, 11:17     Titel:
  Antworten mit Zitat      
Hallo Harald,

ja ich nutze den GUIDE, da ich ein Programm weiterentwickeln muss und daher auf bereits vorhandene Programmstrukturen zurückgreife. Sicherlich kann man hier noch einiges optimieren bzw. eignen sich vielleicht einige Optionen besser, aber dafür fehlen mir sowohl die nötigen Erfahrungen und Fertigkeiten in Matlab als auch Zeit. Aber solange es am Ende wie gewünscht funktioniert, bin ich glücklich.

Das mit dem "nichtfunktionieren" war in diesem Fall schwer auszudrücken, da im Command Window keine Fehlermeldung kam und ich somit keine Rückschlüsse ziehen konnte, wo genau nun das Problem liegt.

Aber ich habe es mittlerweile gelöst. Die Aktualisierung der Edit Textfelder erfolgt wie bereits gesagt über die Callback Funktion des Popup Menüs.

Hier mal beispielhaft dargestellt:
Code:
function Popup_Callback(hObject, eventdata, handles)
    % Pop up Menü
    [~,txt,~] = xlsread('\input\input_data.xlsx');
    lc_name   = txt(3:end,2);
    set(handles.Popup,'String',lc_name);
    P_Value = get(handles.Popup,'Value');
   
    % Aktualisierung des Wertes im Edit Text
    Edittext =handles.Edittext;
        for m = 1:handles.p.ne
            Edittext_plot_1(:,m) = data_conv(handles.Wertebox{P_Value,1}{m,1}.Minimum);
        end
        Edittext_plot = Edittext_plot_1(:);
        Edittext.String = num2str(zero_mean(Edittext_plot),'%.2f');


Vielen Dank für deine Hilfe Harald!
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.