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

Compile mit GUI

 

Yorck
Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.05.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.05.2011, 07:01     Titel: Compile mit GUI
  Antworten mit Zitat      
Hallo,
ich habe drei Programme geschrieben (sagen wir a.m,b.m,c.m), in denen die Berechnungen durchgeführt werden. Dann habe ich dafür ein kleines GUI gebastelt (sagen wir X.m), in dem eigentlich nur die Parameter eingegeben werden. Im Matlab funktioniert das einwandfrei. Ich möchte jetzt eine Windows-Stand-Alone Anwendung erstellen.
Ich nutze das deploytool
Als Hauptprogramm definiere ich das GUI .m file (X.m). Die anderen .m files definere als Ressourcen Files. Der Build Prozess läuft durch und erzeugt mein .exe. Wenn ich die .exe starte baut sich mein GUI mit den Eingabefelder auf. ABER: Wenn ich jetzt Werte eingebe, dann verhält es sich anders als in der Entwicklungsumgebung. Sobald ich aufs nächste Feld springe, wird der Eingabewert des vorherigen Feldes gelöscht. Ich habe in dem GUI ebenfalls einen Pushbutton installiert mit dem ich die eigentlichen Rechnungen starten kann. Wenn ich das bei der .exe mache, würde ich aus den Ergebnissen sagen, dass meine Programme keine Parameter aus der Eingabemaske bekommen.
Was muss ich anders 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: 16.05.2011, 12:07     Titel:
  Antworten mit Zitat      
Hey,

versuch mal nur dein main m-File (X.m) ins deploytool zu laden. Den Rest bitte entfernen (also deine a.m,b.m,c.m entfernen). Auch das X.fig -File musst du nicht ins deploytool laden. Hilft das?

MfG Marco
Private Nachricht senden Benutzer-Profile anzeigen
 
Yorck
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.05.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.05.2011, 12:59     Titel:
  Antworten mit Zitat      
Hallo Marco,
leider nicht.Gleiches Verhalten. Ich hatte die .fig file ursprünglich nicht mit drin, aber ob drin oder draussen, das gleiche Ergebnis
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: 16.05.2011, 22:25     Titel:
  Antworten mit Zitat      
Mmhh seltsam,

1. welche Version nutzt du?
2. gibt es vll eine Fehlermeldung in der Konsole (also im Schwarzen Fenster)?
3. wie lädst du denn die vom User eigegebenen Variablen aus der Gui aus? Kannste da mal ein Beispiel eines Editfeld-Callbacks und des Pushbutton-Callbacks geben?
4. hast du beim erneuten kompilieren die existierendem Daten (.c und exe (src & distr Ordner)) überschrieben oder erst gelöscht und dann kompiliert?

MfG Marco
Private Nachricht senden Benutzer-Profile anzeigen
 
Yorck
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.05.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.05.2011, 21:46     Titel:
  Antworten mit Zitat      
Hallo Marco
1 version ist 2010a (7.10.0.499).
2 ich sehe überhaupt keine Error Meldung
3. Beispiel Code (habe ich aus irgendeinem GUI Tutorial)

function input1_editText_Callback(hObject, eventdata, handles)
% hObject handle to input1_editText (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of input1_editText as text
% str2double(get(hObject,'String')) returns contents of input1_editText as a double
if (isempty(input))
set(hObject,'String','0');
end
guidata(hObject,handles);

function calc_pushbutton_Callback(hObject, eventdata, handles)
% hObject handle to calc_pushbutton (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% FluidProp initalisieren
Init_FluidProp;
% Werte holen
a=get(handles.input1_editText,'String');
b=get(handles.input2_editText,'String');
c=get(handles.input3_editText,'String');
d=get(handles.input4_editText,'String');
e =get(handles.input5_editText,'String');


% VOn String auf Zahlen konvertieren !!!
Tk=str2num(a);
Tv=str2num(b);
Q=str2num(c);
Ndue=str2num(d);
deltaG=str2num(e);
% Der Name ist ein String
Cmp=get(handles.input7_editText,'String');

4. ich habe alles noch mal gelöscht und neu compliert. Gleiches Problem. Das Programm scheint ja grundsätzlich zu laufen

danke und vg
yorck
Private Nachricht senden Benutzer-Profile anzeigen
 
Yorck
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.05.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.05.2011, 22:15     Titel:
  Antworten mit Zitat      
Hallo Maro,
ich habe meinen Feher gefunden. Man sollte halt das Tutorial richtig lesen. Mich wundert jetzt allerdings, warum das Programm im Matlab funktioniert hat....
seis drum

danke
yorck
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: 17.05.2011, 23:11     Titel:
  Antworten mit Zitat      
Hey,
ja gut. Dann sag doch den Leuten hier mal wo dein Fehler war. Damit man es nachvollziehen kann... Achja und benutze doch bitte zukünftig für den Code die "Code anzeigen Funktion". Dann ist der auch besser lesbar... Ein Tipp noch. Benutze den Debugger in Matlab. Der ist Gold wert... Dann kannst du bestimmt auch erkennen warum es funktioniert hat...

MfG Marco
Private Nachricht senden Benutzer-Profile anzeigen
 
Yorck
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 7
Anmeldedatum: 16.05.11
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.05.2011, 21:14     Titel:
  Antworten mit Zitat      
Tja, ich habe einfach den input in der Callback Funktion nicht abgerufen

Code:
input=str2double(get(hObject,'String'));

Interessanterweise hat das Ganze in der Entwicklungsumgebung funktioniert, nur nicht im Compilat.
Danke für deine Hilfe
yorck
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.