schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
gapbeherif
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 17.09.2013, 14:34
Titel: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
Hallo,
ich habe folgendes Problem:
In meiner gui1 kann man Informationsstellen zum Codieren eingeben
Bsp: 1 0 1 0 1 0 1
Wenn man dann auf Codieren drückt, codiert mein Programm, was
auch in gui1 angezeigt wird;
ich habe es leider nicht hinbekommen, das Coderwort in gui2 anzuzeigen;
ich weiß das diese Frage mehrmals schon hier drankam, aber
leider hats ned geklappt, vlt. kann mir jemand helfen;
darüberhinaus wird im Commandwindow ein längerer Text angezeigt;
kann mir jemand helfen diesen Text in der gui2 im Edit-Text-Feld anzuzeigen?
Verfasst am: 17.09.2013, 15:35
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
Hallo gapbeherif,
Herzlich willkommen im Forum.
Wir haben nun eine ungefähre Problem-Beschreibung und Code. Wie können wir Dir nun konkret helfen?
Zitat:
ich habe es leider nicht hinbekommen, das Coderwort in gui2 anzuzeigen;
Das ist zu allgemein um effizient beantwortet werden zu können. Kannst Du den relevanten Teil des Codes posten und konkret zeigen, wo das Problem auftritt?
Gruß, Jan
gapbeherif
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 17.09.2013, 17:07
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
In meiner gui1 habe ich ein Panel mit den Feldern c0 bis c14;
ebenso in gui2;
in gui1 kann ich die Werte der Felder darstellen lassen,
in gui2 nicht, weil ich es nicht hingekriegt habe die Werte von gui1 auf gui2
zu übertragen;
zudem habe ich einen Text im Command Window stehen, den ich nicht im
Command Window sehen möchte, sondern im Edit-Text-Feld in gui2
damit kann ich den gewünschten Text im Command Window anzeigen;
möchte ich aber nicht;
ich will den Text im Edit-Fenster in gui2 anzeigen lassen, welches ich mit dem
Tag 'Ausgabe' bezeichnet habe;
wie muss ich das ändern?
----------------------------------------------------------------------------------------
darüber hinaus:
ich gebe in gui1 meine Information ein:
Code:
ia0 = str2num(get(handles.ia0,'string'));
ia1 = str2num(get(handles.ia1,'string'));
msg = [ia0 ia1];
% codiere sie
code = encode(msg, 15, 2, 'cyclic');
ca0 = code(1,1);
ca1 = code(1,2);
% und gebe sie in gui1 wieder aus set(handles.ca0,'string',ca0);
set(handles.ca1,'string',ca1);
% ich möchte aber nun ca0 und ca1 in gui2 auch ausgeben
% habe es so versucht
%i n gui1 steht:
gui2;
setappdata(0, 'gui1', ca0);
setappdata(0, 'gui1', ca1);
%i n gui2 steht
ca0 = getappdata(0,'gui1');
set(handles.ca0,'string',ca0);
ca1 = getappdata(0,'gui1');
set(handles.ca1,'string',ca1);
Verfasst am: 18.09.2013, 12:01
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
Hallo gapbeherif,
Um etwas im GUI2 anzeigen zu lassen benötigt man zunächst den Handle der Figure. Wie Du den bekommst oder ob der schon bekannt ist, kann ich nicht wissen. Vielleicht:
Wie die Namen oder Tags der Grafik-Objekte sind, kann ich wieder nicht erraten. Das musst Du also entsprechend anpassen. Vielleicht "gui2Handle.Ausgabe"?
Code:
ca0 = code(1,1);
ca1 = code(1,2);
% und gebe sie in gui1 wieder aus set(handles.ca0, 'string', ca0);
set(handles.ca1, 'string', ca1);
Hier wird das Field 'gui1' in den ApplicationData des Root-Objektes zunächst geschrieben und direkt danach wieder überschrieben. Aber wozu dienen die ApplicationData des Root-Objektes hier überhaupt?
Zitat:
%i n gui2 steht
Wo steht das? Und wie wird der Code aufgerufen?
Gruß, Jan
gapbeherif
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 18.09.2013, 14:12
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
Danke Jan für deine Antwort;
ich habe das jetzt so versucht:
in meiner gui1 steht:
Verfasst am: 18.09.2013, 16:33
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
Hallo gapbeherif,
Mein Code ist nicht lauffähig, sondern ein Beispiel, wie es möglich sein könnte. Ich weiß ja nicht, wie die Tags in Deinem Fall heißen, also habe ich in
in meiner gui2 habe ich im Momment noch gar nichts stehen;
So? Aber du möchtest doch den String in ein bestimtmes GUI-Element hineinschreiben. Wie kann das funktionieren, wenn Du noch gar nichts im GUI hast?
Gruß, Jan
gapbeherif
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 18.09.2013, 16:43
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
also jetzt bin ich ein bischen verwirrt;
Auszug aus meiner gui1;
Code:
% --- Executes on button press in Codieren_button. function Codieren_button_Callback(hObject, eventdata, handles) % hObject handle to Codieren_button (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
ia0 = str2num(get(handles.ia0,'string'));
ia1 = str2num(get(handles.ia1,'string'));
ia2 = str2num(get(handles.ia2,'string'));
ia3 = str2num(get(handles.ia3,'string'));
ia4 = str2num(get(handles.ia4,'string'));
ia5 = str2num(get(handles.ia5,'string'));
ia6 = str2num(get(handles.ia6,'string'));
----------------------------------------------------------------------------------
und Auszug aus meiner gui2:
% --- Executes just before gui2 is made visible. function gui2_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to gui2 (see VARARGIN)
% Choose default command line output for gui2
handles.output = hObject;
% UIWAIT makes gui2 wait for user response (see UIRESUME) % uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line. functionvarargout = gui2_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure varargout{1} = handles.output;
function Ausgabe_Callback(hObject, eventdata, handles) % hObject handle to Ausgabe (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 Ausgabe as text % str2double(get(hObject,'String')) returns contents of Ausgabe as a double
% --- Executes during object creation, after setting all properties. function Ausgabe_CreateFcn(hObject, eventdata, handles) % hObject handle to Ausgabe (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in Close_button. function Close_button_Callback(hObject, eventdata, handles) % hObject handle to Close_button (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close(gcbf);
function ca0_Callback(hObject, eventdata, handles) % hObject handle to ca0 (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 ca0 as text % str2double(get(hObject,'String')) returns contents of ca0 as a double
% --- Executes during object creation, after setting all properties. function ca0_CreateFcn(hObject, eventdata, handles) % hObject handle to ca0 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
function ca1_Callback(hObject, eventdata, handles) % hObject handle to ca1 (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 ca1 as text % str2double(get(hObject,'String')) returns contents of ca1 as a double
% --- Executes during object creation, after setting all properties. function ca1_CreateFcn(hObject, eventdata, handles) % hObject handle to ca1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. ifispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white');
end
....
------------------------------------------------------------------------------
ich möchte ca0, ca1 ... ca14 in gui2 anzeigen lassen
hat leider trotz deiner Hilfe nicht geklappt,
oder mache ich gerade völlig was falsch
Edit:
Zudem hast du doch jetzt alle handles in deiner gui1 und kannst die gui2 nach belieben setzen... Wenn du auch in Callbacks der gui1 deine gui2 setzen willst, dann kannst du das auch machen z.B.:
Verfasst am: 18.09.2013, 20:41
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
Vielen Dank für deine Antwort Marco,
ich habe es geschafft meiner Werte von gui1 zu gui2 zu 'übertragen'
aber!
bei der Übertragung des längeren Textes tritt ein Problem auf
S = sprintf('\n\nDie eingegeben Information lautet %d %d %d %d %d %d %d\n\n',msg);
set(handles_gui2.Ausgabe,'string',S);
erscheint im Command-Window folgender Hinweis
Warning: Single line Edit Controls can not have multi-line text
Warning: Single line Edit Controls can not have multi-line text
Warning: Single line Edit Controls can not have multi-line text
vlt. fehlt ein letzter Hinweis, sodass ich es dann hinbekomm
Gruß
Hey,
das habe ich mir gedacht. Wenn du ein Editfeld so setzen möchtest, dass es mehrere Zeilen anzeigt, dann musst du z.B. das Property vom edit Feld 'Max' auf 2 setzen, sodass max-min > 1 ist. Dann sollte es funktionieren.
gapbeherif
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 19.09.2013, 07:59
Titel: Re: schon wieder GUI Werte zu Sub Gui, Ausgabe Sub Gui Text
super, vielen Dank
ich habe alles hinbekommen
Gruß
Einstellungen und Berechtigungen
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
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.