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

Benötige dringend Hilfe mit dem Befehl "menu(title, st

 

bastidost
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 19.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.11.2011, 20:48     Titel:
  Antworten mit Zitat      
Hey Harald,

also Deine Antwort bezüglich der Änderung des "TAG" verstehe ich wohl doch nicht!!

Habe leider keine Ahnung was Du meinst wo ich was machen soll.

Wie rufe ich den das edit menu auf?

Sorry für mein Unwissen.

Gruß
_________________

Matlab macht Spaß wenn man weiß wie es geht!
Private Nachricht senden Benutzer-Profile anzeigen


bastidost
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 19.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.11.2011, 21:13     Titel:
  Antworten mit Zitat      
Hallo Harald,

nachfolgend findest Du meinen Versuch des Zusammenfassens:

Aufruf der Funktion in der GUI:

Code:

function Datei_speichern_ClickedCallback(hObject, eventdata, handles)

switch (questdlg ('Wollen Sie die gesetzten Eingaben speichern?','Zwischenspeichern','Ja','Nein','Nein'));
       case 'Nein';
            return;
           
       case 'Ja';
            DatenSpeichern('style', 'property')
end;



In einem zweiten m-file habe ich die Funktion gespeichert. Code wie folgt:

Code:
function DatenSpeichern(style, property)
         Zwischenspeicher = findobj('style',style);             % alle Textausgabefelder suchen u. handles in Zwischenspeicher schreiben
         for i  =  Zwischenspeicher'
             Tag_namen  =  get(i,'tag');
             Einlesen  =  get(i,property);
             variablen.(Tag_namen)  =  Einlesen;
         end
save(['content_' style], 'variablen');



Die Fehlermeldung lautet wie folgt:

Code:
??? Error using ==> save
Variable 'variablen' not found.

Error in ==> DatenSpeichern at 8
save(['content_' style], 'variablen');
Error in ==> LCL_Export_Kostenermittlung_Vorlauf>Datei_speichern_ClickedCallback at 864
            DatenSpeichern('style', 'property')

Error in ==> gui_mainfcn at 96
        feval(varargin{:});

Error in ==> LCL_Export_Kostenermittlung_Vorlauf at 16
    gui_mainfcn(gui_State, varargin{:});

??? Error while evaluating uipushtool ClickedCallback




auch das laden klappt nicht. Der Code wie folgt:

Code:
%% Laden aus dem Zwischenspeicher mit dem Symbol "Ordner"

function Datei_oeffnen_ClickedCallback(hObject, eventdata, handles)

global EntfernungnachHHfest

switch (questdlg ('Wollen Sie die letzten gesetzten Eingaben laden?','Daten laden','Ja','Nein','Nein'));
       case 'Nein';
            return;
           
        case 'Ja';

            try
            load content_edit_boxes;
            Zwischenspeicher  =  findobj('style','edit');                  % alle Edit-Boxen suchen u. handles in h schreiben
            for i  =  Zwischenspeicher'                                    % alle handles durchgehen
                Tag_namen  =  get(i,'tag');                                % Tag lesen
                Einlesen  =  var.(Tag_namen);                              % passenden Inhalt aus struct lesen
                set(i,'string',Einlesen);                                  % diesen Inhalt in Edit-Box schreiben
            end                                                            
                catch
                      errordlg ('Die zwischengespeicherten Werte konnten nicht gelesen werden oder existieren nicht!', 'Fehler beim Laden','modal');
            end

                try
                load content_radiobutton;
                Zwischenspeicher  =  findobj('style','radiobutton');
                for i  =  Zwischenspeicher'
                    Tag_namen  =  get(i,'tag');  
                    Einlesen   =  var.(Tag_namen);
                    if strcmp(Tag_namen, 'Eigene_Auswahl')                 % Wenn die Strings gleich sind, dann fragen ob,
                       if Einlesen == 1                                    % der Wert gleich "1" ist. Wenn Ja, dann
                          set(handles.Auswahl_Abgangsort,'enable','off');
                          set(handles.Auswahl_Abgangsort,'Value',1);
                          set(handles.Entfernung_nach_HH,'enable','on')
                          Fotodatei  =  imread('LKW_Hongkong.jpg');
                          image (Fotodatei);
                          set(gca,'DataAspectRatio',[1 0.9 1]);
                          set(gca,'Visible','on','Units','Pixels','Position',[402,172,456,430]);
                          set(gca,'XTick',[]),set(gca,'YTick',[]);
                       end

                           elseif strcmp(Tag_namen, 'Vorgabeliste')
                                  if Einlesen == 1
                                     load content_popupmenu;
                                     Zwischenspeicherpop  =  findobj('style','popupmenu');
                                     for k  =  Zwischenspeicherpop'
                                         Tag_namenpop  =  get(k,'tag');  
                                         Einlesenpop   =  var.(Tag_namenpop);
                                         if Einlesenpop == 1
                                            set(handles.Ausgabe_Entfernung,'FontWeight','normal','ForegroundColor','red','string','0,00');
                                            set(handles.Entfernung_nach_HH,'enable','off');                      
                                            set(handles.Auswahl_Abgangsort,'enable','on');                        
                                            set(handles.Entfernung_nach_HH,'string','0');
                                            Fotodatei  = imread('DB_Schenker_Logo.jpg');
                                            image (Fotodatei);
                                            set(gca,'DataAspectRatio',[1.735 1 1]);
                                            set(gca,'Visible','on','Units','Pixels','Position',[229,443,800,136]);
                                            set(gca,'XTick',[]),set(gca,'YTick',[]);

                                            elseif Einlesenpop == 2
                                                   set(handles.Ausgabe_Entfernung,'FontWeight','normal','ForegroundColor',[1,0,0],'string',EntfernungnachHHfest(1));
                                                   Fotodatei  =  imread('Butzbach.jpg');
                                                   image (Fotodatei);
                                                   set(gca,'DataAspectRatio',[1 1.13 1]);
                                                   set(gca,'Visible','on','Units','Pixels','Position',[402,172,456,430]);
                                                   set(gca,'XTick',[]),set(gca,'YTick',[]);
         
                                                   elseif Einlesenpop == 3
                                                          set(handles.Ausgabe_Entfernung,'FontWeight','normal','ForegroundColor',[1,0,0],'string',EntfernungnachHHfest(2));
                                                          Fotodatei  =  imread('Darmstadt.jpg');
                                                          image (Fotodatei);
                                                          set(gca,'DataAspectRatio',[1 1.13 1]);
                                                          set(gca,'Visible','on','Units','Pixels','Position',[402,172,456,430]);
                                                          set(gca,'XTick',[]),set(gca,'YTick',[]);
                 
                                                          elseif Einlesenpop == 4
                                                                 set(handles.Ausgabe_Entfernung,'FontWeight','normal','ForegroundColor',[1,0,0],'string',EntfernungnachHHfest(3));                                                                    
                                                                 Fotodatei  =  imread('Frankfurt.jpg');
                                                                 image (Fotodatei);
                                                                 set(gca,'DataAspectRatio',[1 1.13 1]);
                                                                 set(gca,'Visible','on','Units','Pixels','Position',[402,172,456,430]);
                                                                 set(gca,'XTick',[]),set(gca,'YTick',[]);
                           
                                                                 elseif Einlesenpop == 5
                                                                        set(handles.Ausgabe_Entfernung,'FontWeight','normal','ForegroundColor',[1,0,0],'string',EntfernungnachHHfest(4));
                                                                        Fotodatei  =  imread('Kelsterbach.jpg');
                                                                        image (Fotodatei);
                                                                        set(gca,'DataAspectRatio',[1 1.13 1]);
                                                                        set(gca,'Visible','on','Units','Pixels','Position',[402,172,456,430]);
                                                                        set(gca,'XTick',[]),set(gca,'YTick',[]);
                                 
                                                                        elseif Einlesenpop == 6
                                                                               set(handles.Ausgabe_Entfernung,'FontWeight','normal','ForegroundColor',[1,0,0],'string',EntfernungnachHHfest(5));                
                                                                               Fotodatei  =  imread('Wiesbaden.jpg');
                                                                               image (Fotodatei);
                                                                               set(gca,'DataAspectRatio',[1 1.13 1]);
                                                                               set(gca,'Visible','on','Units','Pixels','Position',[402,172,456,430]);
                                                                               set(gca,'XTick',[]),set(gca,'YTick',[]);                      
                                         end
                                             set(k,'Value',Einlesenpop);    
                                     end
                                  end
                    end
                        set(i,'Value',Einlesen);
                end
                    catch
                          errordlg ('Die zwischengespeicherten Werte konnten nicht gelesen werden oder existieren nicht!', 'Fehler beim Laden','modal');
                end

                    try
                    load content_text;
                    Zwischenspeicher  =  findobj('style','text');
                    for i  =  Zwischenspeicher'
                        Tag_namen  =  get(i,'tag');
                        Einlesen  =  var.(Tag_namen);
                        set(i,'string',Einlesen);
                    end
                        catch
                              errordlg ('Die zwischengespeicherten Werte konnten nicht gelesen werden oder existieren nicht!', 'Fehler beim Laden','modal');
                    end

                        try
                        load content_checkbox;
                        Zwischenspeicher  =  findobj('style','checkbox');
                        for i  =  Zwischenspeicher'
                            Tag_namen  =  get(i,'tag');  
                            Einlesen   =  var.(Tag_namen);
                            set(i,'Value',Einlesen);
                        end
                            catch
                                  errordlg ('Die zwischengespeicherten Werte konnten nicht gelesen werden oder existieren nicht!', 'Fehler beim Laden','modal');
                        end

end;


Ich würde es so gerne hin bekommen.

MFG
_________________

Matlab macht Spaß wenn man weiß wie es geht!
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.11.2011, 22:26     Titel:
  Antworten mit Zitat      
Hallo,

ich würde vorschlagen, wir sehen uns das Speichern an. Das Laden wird äquivalent gehen. Also:

Der Aufruf
Code:
DatenSpeichern('style', 'property')

im Callback ist nicht sinnvoll! Dann würdest du in der Funktion ja nach dem Style 'style' und dem Property 'property' suchen.

Sinnvolle Aufruf sähen z.B. so aus:
Code:
DatenSpeichern('edit', 'string') %speichert für alle editierbaren Textfelder die Eigenschaft String
DatenSpeichern('radiobutton', 'value') %speichtert für alle Radiobuttons die Eigenschaft Value


Du solltest auch mal den Debugger verwenden, um zu sehen, was deine Befehle eigentlich machen Wink

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
bastidost
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 19.03.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.11.2011, 23:08     Titel:
  Antworten mit Zitat      
Huhu Harald,

am Debugger versuche ich mich schon ziemlich oft um nachzuvollziehen, was passiert.

Dennoch fehlt mir manchmal eine Erfahrener Ansprechpartner um es ganz zu verstehen.

Morgen früh werde ich mich gleich wieder ans Werk setzten.

Vielen Dank für Deine Hilfestellung.

Grüße
Sebastian
_________________

Matlab macht Spaß wenn man weiß wie es geht!
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen

Gehe zu Seite Zurück  1, 2

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.