2016-09-25 9 views
0

Farzeug構造体をgui popupmenuの内部から修正しようとしています。私はassignin機能を使用しようとしています。Matlab変数構造体にEvalinを割り当てる

contents = get(hObject,'Value') 
Klima_Regler_GUI = evalin('base','Fahrzeug.Klima_Regler'); 
switch contents 
    case 1 
     Klima_Regler_GUI = 1; 
     assignin('base','Fahrzeug.Klima_Regler',Klima_Regler_GUI); 
    case 2 
     Klima_Regler_GUI = 0.75; 
     assignin('base','Fahrzeug.Klima_Regler',Klima_Regler_GUI); 
    case 3 
     Klima_Regler_GUI = 0.50; 
     assignin('base','Fahrzeug.Klima_Regler',Klima_Regler_GUI); 
    case 4 
     Klima_Regler_GUI= 0.25; 
     assignin('base','Fahrzeug.Klima_Regler',Klima_Regler_GUI); 
case 5 
     Klima_Regler_GUI = 0; 
     assignin('base','Fahrzeug.Klima_Regler',Klima_Regler_GUI); 
otherwise 

が、私はこのエラーを得続ける:私は任意の助けに感謝します

error

+0

画像を読みにくいため、テキストとしてエラーを投稿してください。 – Adriaan

答えて

0

使用して構造体フィールドを変更することは不可能であるassignin

assignin(ws, 'var', val) assigns the value val to the variable var in the workspace ws. The var input must be the array name only; it cannot contain array indices.

理由しかし、あなたはを使うことができますこれを行うには

evalin('base',['Fahrzeug.Klima_Regler = ' num2str(Klima_Regler_GUI)]) 
関連する問題