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

enable on/off über checkbox schalten

 

tobi

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.12.2007, 23:09     Titel: enable on/off über checkbox schalten
  Antworten mit Zitat      
hallo forum

ich möchte gern über eine checkbox andere dinge z.B. slider ein udn ausschalten. Ich habe es über die schleife gelöst udn es klappt auch, aber matlab bringt meldungen:
Code:
if get(handles.checkbox1,'Value');
    {
        set(handles.slider2,'Enable','on');
    }
else;
    {
        set(handles.slider2,'Enable','off');
    }
end


Hier die Meldungen:
Zitat:
??? Error using ==> set
One or more output arguments not assigned during call to "set".

Error in ==> gui>checkbox1_Callback at 184
set(handles.slider2,'Enable','off');

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

Error in ==> gui at 42
gui_mainfcn(gui_State, varargin{:});

??? Error while evaluating uicontrol Callback.


ihn stört definitiv die schleife, aber warum?

gruß tobi


Nyquist
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 60
Anmeldedatum: 19.11.07
Wohnort: Laupheim
Version: ---
     Beitrag Verfasst am: 04.12.2007, 09:30     Titel:
  Antworten mit Zitat      
Guten morgen tobi,

im Prinzip stimmt der Code.
Aber du musst beachten das wenn du die Schleife z.b in der Callbackfunktion von der Checkbox hast musst du die IFabfrage folgendermaßen schreiben.

Code:

if get(hObject,'Value')=1
       .....;
else
       ......;
end
 


und bitte ohne semicolon hinter if else und end Very Happy
_________________

Mit freundlcihem Gruß
Nyquist
Private Nachricht senden Benutzer-Profile anzeigen
 
tobi

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2007, 10:01     Titel:
  Antworten mit Zitat      
hallo nyquist,

danke erstmal für deine antwort. (Hast noch ein zweites = vergessen Wink )

Code:
function slider1_CreateFcn(hObject, eventdata, handles)

if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
    set(hObject,'BackgroundColor',[.9 .9 .9]);
end


function checkbox1_Callback(hObject, eventdata, handles)

if get(hObject,'Value')==1
{
set(handles.slider1,'Enable','off');
}
else
{
set(handles.slider1,'Enable','on');
}
end


der Code bringt trotzdem in Matlab eine meldung:
Zitat:
??? Error using ==> set
One or more output arguments not assigned during call to "set".

Error in ==> gui>checkbox1_Callback at 111
set(handles.slider1,'Enable','on');

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

Error in ==> gui at 42
gui_mainfcn(gui_State, varargin{:});

??? Error using ==> gui('checkbox1_Callback',gcbo,[],guidata(gcbo))
Error using ==> set
One or more output arguments not assigned during call to "set".

??? Error while evaluating uicontrol Callback


ich weiß absolut nicht was er von mir will Cool schließlich läuft es ja Smile

hast du noch eine idee?

gruß tobi
 
Bijick
Ehrenmitglied

Ehrenmitglied



Beiträge: 914
Anmeldedatum: 18.06.07
Wohnort: Nürnberg
Version: R2006b, R2008b
     Beitrag Verfasst am: 04.12.2007, 12:17     Titel:
  Antworten mit Zitat      
Hallo tobi,

das Problem sind die geschweiften Klammern. Matlab "glaubt", du erwartest einen output von set, den du in ein cell array speichern willst. Tatsächlich kann set auch einen output geben, aber nicht, wenn man drei Parameter übergibt (Objekt, Eigenschaft und Wert), sondern nur, wenn man einen oder zwei Parameter übergibt (beispielsweise nur das Objekt und 'Default'). Daher die Fehlermeldung mit dem output argument.

In Matlab sind überhaupt keine Klammern notwendig, um Befehle zu gruppieren. Glücklicherweise. Very Happy

Herzliche Grüße
Bijick
_________________

>> why
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
tobi

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.12.2007, 15:22     Titel:
  Antworten mit Zitat      
hallo bijick,

ich bin dir sooooooo dankbar Smile

echt klasse erklärt und du hast vollkommen recht.

vielen vielen dank,
tobi
 
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.