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

invalid object handle error!!!

 

furkan-karatas
Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 11.08.15
Wohnort: München
Version: ---
     Beitrag Verfasst am: 21.08.2015, 09:57     Titel: invalid object handle error!!!
  Antworten mit Zitat      
Code:

function plottyp_waehlen_SelectionChangeFcn(hObject, eventdata, handles)
 switch get(hObject,'Tag') % Get Tag of selected object
 case 'plotten_2D'
 % Code for when radiobutton1 is selected.
 
 plot(handles.axes1, x,y);
 xlabel(handles.axes1, handles.colNames{xColNum});
 ylabel(handles.axes1, handles.colNames{yColNum});
 grid off
 
  case 'plotten_3D'
 %Code for when radiobutton2 is selected.
 
  plot3(handles.axes1, x,y,z);
  xlabel(handles.axes1, handles.colNames{xColNum});
  ylabel(handles.axes1, handles.colNames{yColNum});
  zlabel(handles.axes1, handles.colNames2{zColNum});
  grid off
 
 otherwise
 % Code for when there is no match.
 msgbox('Bitte ein Plottyp auswaehlen!');
 end
 


Ich bekomme die Fehlermeldung invalid object handle.
Kann mir bitte jemand sagen was ich falsch mache?
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.08.2015, 10:05     Titel:
  Antworten mit Zitat      
Hallo,

welche Fehlermeldung kommt genau, und in welcher Zeile?
Ein reproduzierbares Beispiel wäre hilfreich.

Beim momentanen Code dürfte zudem das Problem sein, dass x,y,z nicht bekannt sein werden, siehe dazu
http://de.mathworks.com/help/matlab.....data-among-callbacks.html

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
furkan-karatas
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 11.08.15
Wohnort: München
Version: ---
     Beitrag Verfasst am: 21.08.2015, 10:10     Titel:
  Antworten mit Zitat      
Hallo Harald,

??? Invalid handle object.

Error in ==> uitools.uibuttongroup.childAddedCbk>manageButtons at 59
oldctrl = get(hgroup, 'OldSelectedObject');

??? Error while evaluating uicontrol Callback

Das ist die genaue Fehlermeldung .

Code:
function updateAxes(hObject, eventdata, handles)

xColNum  = get(handles.popupmenuX, 'value');
yColNum  = get(handles.popupmenuY, 'value');  
zColNum  = get(handles.ausgangswert, 'value');


x = handles.numbers(:, xColNum);
y = handles.numbers(:, yColNum);
z = handles.numbers2(:, zColNum);

guidata(hObject, handles);


x,y,z wird in einer anderen Funktion bereits definiert
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.08.2015, 10:51     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Das ist die genaue Fehlermeldung .

Ich kann mir nicht vorstellen, dass die Fehlermeldung nicht auch die Zeile deines Codes enthält, in der der Fehler auftritt.

Zitat:
x,y,z wird in einer anderen Funktion bereits definiert

... und die Funktionen haben separate Workspaces. Deswegen hilft dir das wenig.

Und wie gesagt:
Zitat:
Ein reproduzierbares Beispiel wäre hilfreich.


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
furkan-karatas
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 11.08.15
Wohnort: München
Version: ---
     Beitrag Verfasst am: 21.08.2015, 11:23     Titel:
  Antworten mit Zitat      
Code:
function Daten_Laden_Callback(hObject, eventdata, handles)

 handles.fileName = uigetfile({'*.m;*.xlsx'},
 [numbers, colNames, raw] = xlsread(handles.fileName, 'Input');
 handles.numbers=numbers;
 handles.colNames=colNames;
 
 [numbers2, colNames2, raw] = xlsread(handles.fileName, 'Output');
 handles.numbers2=numbers2;
 handles.colNames2=colNames2;

 guidata(hObject, handles)
 
 setPopupmenuString(handles.popupmenuX, eventdata, handles)
 setPopupmenuString(handles.popupmenuY, eventdata, handles)
 setPopupmenuString2(handles.ausgangswert, eventdata, handles)
 
 set(handles.popupmenuX, 'callback', 'Test2_3_Verknuepfung(''updateAxes'',gcbo,[],guidata(gcbo))')
 set(handles.popupmenuY, 'callback', 'Test2_3_Verknuepfung(''updateAxes'',gcbo,[],guidata(gcbo))')
 set(handles.ausgangswert, 'callback', 'Test2_3_Verknuepfung(''updateAxes'',gcbo,[],guidata(gcbo))')
 
% Daten werden in der UserData der figure gespeichert
[data1, txt, raw] = xlsread(handles.fileName, 'Input');
f=figure('visible','off');
setappdata(f, 'data', data1);
setappdata(f, 'txt', txt);
setappdata(f, 'raw', raw);

[data2, txt, raw] = xlsread(handles.fileName, 'Output');
f=figure('visible','off');
setappdata(f, 'data', data2);
setappdata(f, 'txt', txt);
setappdata(f, 'raw', raw);

%Zusammenfügen beider Matrizen
data = [data1, data2];

% Schreibe Input in die GUI-Tabelle
columnformat = {'bank', 'bank', 'bank'};
set(handles.eingabe_tabelle,'data',data, 'ColumnFormat', columnformat)

%Löschen doppelter Einträge
SOC = data(:,1);
SOC = unique(SOC);
temp = data(:,2);
temp = unique(temp);
pulsdauer = data(:,3);
pulsdauer = unique(pulsdauer);
SOH = data(:,4);
SOH = unique(SOH);
Leistung = data(:,5);
Leistung = unique(Leistung);
Spannung = data(:,6);
Spannung = unique(Spannung);



% Weise Datem jeweils einem Pointer zu
handles.data=data;
handles.SOC=SOC;
handles.temp=temp;
handles.pulsdauer=pulsdauer;
handles.SOH= SOH;
handles.Leistung = Leistung;
handles.Spannung = Spannung;
handles.txt=txt;
guidata(hObject,handles)

 function setPopupmenuString(hObject, eventdata, handles)
       
 set(hObject, 'string', handles.colNames);
 
 function setPopupmenuString2(hObject, eventdata, handles)
 set(hObject, 'string', handles.colNames2);
 
 
function updateAxes(hObject, eventdata, handles)

xColNum  = get(handles.popupmenuX, 'value');
yColNum  = get(handles.popupmenuY, 'value');  
zColNum  = get(handles.ausgangswert, 'value');


x = handles.numbers(:, xColNum);
y = handles.numbers(:, yColNum);
z = handles.numbers2(:, zColNum);

guidata(hObject, handles);



function plottyp_waehlen_SelectionChangeFcn(hObject, eventdata, handles)

 switch get(hObject,'Tag') % Get Tag of selected object
 case 'radiobutton1'
 % Code for when radiobutton1 is selected.
 
 plot(handles.axes1, x,y);
 xlabel(handles.axes1, handles.colNames{xColNum});
 ylabel(handles.axes1, handles.colNames{yColNum});
 grid off
 
  case 'radiobutton2'
 %Code for when radiobutton2 is selected.
 
  plot3(handles.axes1, x,y,z);
  xlabel(handles.axes1, handles.colNames{xColNum});
  ylabel(handles.axes1, handles.colNames{yColNum});
  zlabel(handles.axes1, handles.colNames2{zColNum});
  grid off
 
 otherwise
 % Code for when there is no match.
 msgbox('Bitte ein Plottyp auswaehlen!');
 end



das ist mein gesamter code
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 21.08.2015, 13:04     Titel:
  Antworten mit Zitat      
Hallo,

das sieht nach einer mit GUIDE erstellten GUI aus.
Bitte den kompletten Code und das zugehörige .fig zur Verfügung stellen, sowie welche Aktionen in der GUI in welcher Reihenfolge ausgeführt werden.

Grüße,
Harald
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: 21.08.2015, 14:18     Titel: Re: invalid object handle error!!!
  Antworten mit Zitat      
Hallo furkan-karatas,

Bitte poste immer die vollständige Fehlermeldung. Wir wissen immer noch nicht, in welcher Zeile der Fehler auftritt. Und dies zu erraten ist ineffizient, wenn Du die Information schon auf dem Bildschirm hast.

Ich rate trotzdem mal: Das AXES mit dem Handle handles.axes1 existiert nicht (mehr?). Du kannst den Debugger verwenden um zu untersuchen, wo es gelöscht oder überschrieben wird. Wo wird es überhaupt erzeugt? Müsste handles.axes1 nicht irgendwo definiert werden? Du schreibst "das ist mein gesamter Code", aber fehlt da nicht eine OpeningFcn usw.?

Zur Zeit haben wir also noch nicht genügend Informationen, um weiterhelfen zu können.

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

Forum-Anfänger

Forum-Anfänger


Beiträge: 37
Anmeldedatum: 11.08.15
Wohnort: München
Version: ---
     Beitrag Verfasst am: 25.08.2015, 08:27     Titel:
  Antworten mit Zitat      
Danke euch beiden für eure schnellen Antworten.

Habe mein Problem gelöst.

Danke euch trotzdem.

Gruß

Furkan
Private Nachricht senden Benutzer-Profile anzeigen
 
Flo M

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.02.2016, 14:00     Titel: Re: invalid object handle error!!!
  Antworten mit Zitat      
Zitat:
Habe mein Problem gelöst.


Wenn du deine Lösung auch hier präsentieren würdest, dann wäre das auch weiteren Personen mit diesem Problem eine Hilfe.
 
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.