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

GUIDE Toolbox

 

Maxx_BMT
Forum-Fortgeschrittener

Forum-Fortgeschrittener



Beiträge: 75
Anmeldedatum: 09.10.13
Wohnort: Ilmenau
Version: R2011a, R2016a
     Beitrag Verfasst am: 30.06.2015, 09:55     Titel: GUIDE Toolbox
  Antworten mit Zitat      
Hallo,

ich bin recht neu im erstellen einer grafischen Nutzoberfläche. Deshlab möchte ich erstmal mein ganzes Problem darstellen.

Ich habe mir ein Programm geschrieben mit dem ich z.B. meine Datei umbenennen kann zum archivieren, nun habe ich die Möglichkeit dies zu bejahen oder zu verneinen am Anfang. Danach erfolgt eine Auswertung der angewählten Daten.

Bei allen diesen Funktionen nutze ich entsprechende Inputs, welche vorher deklariert werden sollen.

Nun meine Frage wie kann ich der grafischen Benutzeroberfläche inputs zuweisen. Das heißt z.B. wenn ich die Umbennung angewählt habe möchte ich in der GUI ein Feld in dem ich den Namen angeben kann der dann für die Umbennung übernommen wird.

Liebe Grüße und danke für eure Hilfe.

P.S. Falls es hilft ich kann auch gern meinen Code mit anhängen.
_________________

Mathematik ist ein geistreicher Luxus. - Friedrich der Große
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: 30.06.2015, 10:39     Titel: Re: GUIDE Toolbox
  Antworten mit Zitat      
Hallo Maxx_BMT,

Dein Frage ist noch nicht klar.

Zitat:
Ich habe mir ein Programm geschrieben mit dem ich z.B. meine Datei umbenennen kann zum archivieren, nun habe ich die Möglichkeit dies zu bejahen oder zu verneinen am Anfang.

Um was zu bejahen?

Zitat:
Bei allen diesen Funktionen nutze ich entsprechende Inputs, welche vorher deklariert werden sollen.

Das ist nicht klar. Bitte erkläre es an einem konkreten Beispiel.

Zitat:
Nun meine Frage wie kann ich der grafischen Benutzeroberfläche inputs zuweisen. Das heißt z.B. wenn ich die Umbennung angewählt habe möchte ich in der GUI ein Feld in dem ich den Namen angeben kann der dann für die Umbennung übernommen wird.

Hier wäre ein Bild oder der entsrpechende Code hilfreich. Ich verstehe es noch nicht.

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

Forum-Fortgeschrittener

Forum-Fortgeschrittener



Beiträge: 75
Anmeldedatum: 09.10.13
Wohnort: Ilmenau
Version: R2011a, R2016a
     Beitrag Verfasst am: 30.06.2015, 11:37     Titel:
  Antworten mit Zitat      
Ok Smile

Alsoooo... Ich möchte wählen können, ob ich die Datei umbenennen kann oder gleich zur Auswertung übergehe, das habe ich so realisiert:

Code:
if strcmp(change_file, 'j');
%%Umbennung
end


Ich möchte als sozusagen am Anfang des Programms zwischen ja oder nein wählen können. Sozusagen ein Button mit ja und nein erzuegen bzw. einem Button den Input j zuweisen. Danach soll enstprechend die zu umbennende Datei ausgewählt werden auch durch die GUI.

Wenn ich es bejahe dann werden viele inputs abgefragt - zur Umbennennung der Datei - die möchte ich natürlich auch in meiner GUI eingeben können.

Dann kommt die Auswertung.

Hier möchte ich vorrangig die zu auswertende Datei anwählen können:

Code:
file = uigetfile ('*.xlsx','Bitte Datei zur Auswertung auswählen');
Excel = actxserver ('Excel.Application');
Excel.Workbooks.Open(fullfile(pwd,file))
num1 = xlsread(file,1);
num2 = xlsread(file,2);
Excel.Quit
Excel.delete
clear Excel


Danach sollen nur noch ein paar kleine Parameter zur Auswertung eingegeben werden.

Am schluss möchte ich dann wieder gefragt werden, ob ich die Daten gespeichert haben möchte, das passiert folgendermaßen:


Code:

save_file = input('Sollen die Bilder gespeichert werden? j/n: ','s');

if strcmp(save_file, 'j')

filename1 = [file '_Rohdaten.png'];
saveas(f1,filename1)

filename2 = [file 'gesamte_Messung.png'];
saveas(f2,filename2)  

filename3 = [file '_skalierte_Messung_Zeitmessung.png'];
saveas(f3,filename3)  

filename4 = [file '_Peaks_Zeitversatz_geteilt.png'];
saveas(f4,filename4)  

filename5 = [file '_Peaks_Zeitversatz_gesamt.png'];
saveas(f5,filename5)

mesdata=[t1' , scale4];
xlswrite(file, mesdata, 'aufsummierte Messung');

statdata = {'Wert' ,'' ,'' ,'' ,'','','';
            '' ,'' ,'' ,'' ,'','','';
            'Maximalkraft:' ,'' ,[num2str(maxy) ' N'] ,'' ,'','','';
            'Beißzeit:' ,'' ,[num2str(c/fa1) ' s'] ,'' ,'','','';
            'Zeitpunkt der Maximalkraft:' ,'' ,[num2str((maxt/fa1)-(start/fa1)) ' s'] ,'' ,'','','';
            'Mittlere Beißkraft:' ,'', [num2str(meanforce) ' N'], ['+- ' num2str(std_force) ' N'], '' , '' , '';
            'Beißfrequenz:', '' , [num2str(frequenz) ' Bisse/sek'], ['+- ' num2str(std_frequenz) ' Bisse/sek'], '', '',''};
        xlswrite(file, statdata, 'Auswertung');
 


Wenn dies bejaht wird, sollen die Graphen und die Daten entsprechend gespeichert werden. Ich möchte also dem Button das j zuweisen, das er dies als Input nimmt für den strcmp nimmt, gleich dem obigen Beispiel.
_________________

Mathematik ist ein geistreicher Luxus. - Friedrich der Große
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: 30.06.2015, 15:07     Titel:
  Antworten mit Zitat      
Hallo Maxx_BMT,

Zitat:
Ich möchte als sozusagen am Anfang des Programms zwischen ja oder nein wählen können. Sozusagen ein Button mit ja und nein erzuegen bzw. einem Button den Input j zuweisen.

Man kann einem Button keinen Input zuweisen.
Wenn ein Button gedrückt wird, ruft er seine Callback-Funktion auf. Dort steht der Code, der ausgeführt werden soll.
Statt "ja" und "nein" würde ich also eher einen Button erwarten auf dem "Umbenennen" steht.

Zitat:
Danach soll enstprechend die zu umbennende Datei ausgewählt werden auch durch die GUI.

Das klingt nach einer Aufgaben für uigetfile

Zitat:
Wenn ich es bejahe dann werden viele inputs abgefragt - zur Umbennennung der Datei - die möchte ich natürlich auch in meiner GUI eingeben können.

Hast Du hierzu eine Frage?

Über den ActiveX-Aufruf für xlsread haben wir bereits in einem anderen Thread gesprochen.

Zitat:
Danach sollen nur noch ein paar kleine Parameter zur Auswertung eingegeben werden.

Das ist beim Lesen lediglich verwirrend.

Zitat:
Am schluss möchte ich dann wieder gefragt werden, ob ich die Daten gespeichert haben möchte, das passiert folgendermaßen:

Statt per input im Command-Window zu agieren, bietet sich an stattdessen im GUI zu bleiben und dort wieder einen entsprechenden Button zu verwenden, oder eine Checkbox.

Zitat:
Ich möchte also dem Button das j zuweisen, das er dies als Input nimmt für den strcmp nimmt, gleich dem obigen Beispiel.

Wie gesagt: Es ist nicht die Natur von Buttons, dass ihnen Buchstaben "zugewiesen" werden. GUIs funktionieren grundsätzlich nach dem Callback-Prinzip: Ein Event löst den Aufruf einer Funktion auf und gibt als Input das aufrufende Grafik-Objekt und Informationen zum Event mit.

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

Forum-Fortgeschrittener

Forum-Fortgeschrittener



Beiträge: 75
Anmeldedatum: 09.10.13
Wohnort: Ilmenau
Version: R2011a, R2016a
     Beitrag Verfasst am: 06.07.2015, 08:20     Titel:
  Antworten mit Zitat      
Hallo,

ah ok ich verstehe, dass hat mir schon sehr geholfen. Ich denke daraus kann ich erstmal was basteln bzw. das muss ich erstmal für meinen ALgorithmus umschreiben. Falls dann noch grundlegende Fehler auftreten, melde ich mich nochmal Wink

Vielen Dank für deine Hilfe.

Beste Grüße,
Maxx_BMT
_________________

Mathematik ist ein geistreicher Luxus. - Friedrich der Große
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.