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

Edit Text Box und Push Button

 

Kenji
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 03.12.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.01.2009, 03:51     Titel: Edit Text Box und Push Button
  Antworten mit Zitat      
Hilfe, ich brauche mal wieder Hilfe. Crying or Very sad
Ich möchte in einer Text Box einen Wert eingeben (funktioniert), diesen dann per Push Button bestätigen und zum Verarbeiten weitergeben.
Also in etwa so: wert -> ok -> an sobel übergeben.
Leider bekomme ich es nicht hin und währe für jede Hilfe sehr dankbar.
Momentan bekomme ich immer diese Fehlermeldung

??? Reference to non-existent field 'sobelthresh'.

Error in ==> KLIP>pushbutton3edgeTHRESHok_Callback at 133
sobelthresh(handles.sobelthresh);

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

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

??? Error using ==> KLIP('pushbutton3edgeTHRESHok_Callback',gcbo,[],guidata(gcbo))
Reference to non-existent field 'sobelthresh'.

??? Error while evaluating uicontrol Callback

Meinen m-File habe ich auch mal angehangen.
Vielen Dank, Gruß Kenny

KLIP.m
 Beschreibung:

Download
 Dateiname:  KLIP.m
 Dateigröße:  13.96 KB
 Heruntergeladen:  690 mal
Private Nachricht senden Benutzer-Profile anzeigen


Kenji
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 03.12.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.01.2009, 04:15     Titel: Noch mal
  Antworten mit Zitat      
Hallo noch mal,
ich schaffe es immer noch nicht meine Variable zu übergeben.
Ich möchte, das von der edit box ein Wert eingelsen wird und dieser dann später über ein push button verarbeitet wird.
Ich denke es liegt bei mir an den handles.
Würde mich sehr freuen, wenn mir jemand helfen könnte.

Gruß Kenny

Code:
% --- Executes just before canny150109 is made visible.
function canny150109_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 canny150109 (see VARARGIN)

coins = imread('Coins.png');
handles.current_data = coins;
axes(handles.axes1);
imshow(handles.current_data);
axes(handles.axes2);
imshow(handles.current_data);

handles.a = 0;

% Choose default command line output for canny150109
handles.output = hObject;

% Update handles structure
guidata(hObject, handles);

% UIWAIT makes canny150109 wait for user response (see UIRESUME)
% uiwait(handles.figure1);


% --- Outputs from this function are returned to the command line.
function varargout = canny150109_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 edit1low_Callback(hObject, eventdata, handles)
% hObject    handle to edit1low (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 edit1low as text
%        str2double(get(hObject,'String')) returns contents of edit1low as a double
 
a = str2double(get(hObject,'string'));
guidata(hObject,handles);
if isnan(a)
    errordlg('You must enter a numeric value','Bad Input','modal')
    return
end
% --- Executes during object creation, after setting all properties.
function edit1low_CreateFcn(hObject, eventdata, handles)
% hObject    handle to edit1low (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.
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
    set(hObject,'BackgroundColor','white');
end


% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)


sz2=size(handles.current_data);
sz1=size(sz2);
if sz1(1,2)==3;
    handles.current_data= rgb2gray(handles.current_data);
end;

a=handles.a;

if a == 0;
    handles.current_data = edge(handles.current_data,'sobel',[]);
else
    handles.current_data = edge(handles.current_data,'sobel',[a],'both'); %direction (vertical, horizontal, both (default))
end
axes(handles.axes2);
imshow(handles.current_data);
 
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.01.2009, 19:32     Titel:
  Antworten mit Zitat      
Hallo,

hab leider nur kurz darübergeschaut, allerdings scheint es so dass es an den handles liegt. In "edit1low_Callback" z.B. untersuchst du, ob der String in dem Objekt (vermutlich die Edit Box) eine Zahl ist. Allerdings schreibst du die Zahl nirgends rein!. Versuche es mal damit:

Code:
[...]
a = str2double(get(hObject,'string'));
if isnan(a)
    errordlg('You must enter a numeric value','Bad Input','modal')
else
    handles.a = a;
end
guidata(hObject,handles);


Welche Fehlermeldung erhältst du denn?

MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Monty

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.01.2009, 11:15     Titel: Case-sensitive
  Antworten mit Zitat      
Hi, ist das Kommando
Code:
(get(hObject,'string'));
case-sensitive? Dann musst du
Code:
groß schreiben.

Gruß
Monty
 
Kenji
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 03.12.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.01.2009, 23:46     Titel: Es klappt, DANKE
  Antworten mit Zitat      
Hi Monty und dip0r,
danke für eure Hilfe.
Mit case-sensitve hatte es in diesem Fall nichts zu tun.
Ansonsten klappt der Code-Vorschlag und mein kleines Prog ist jetzt endlich lauffähig.
Nochmals DANKE.

Gruß Kenny Very Happy
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2009, 12:59     Titel:
  Antworten mit Zitat      
Hallo,

soweit ich weiss, sind alle set und get Befehle (bzw. Properties) nicht case-sensitive, weil sie intern mittels "lower" in die Kleinbuchstaben-Notation konvertiert werden.

Freut mich dass es jetzt klappt.

MfG
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 - 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.