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

Probleme mit eingelesenen Werten aus GUI

 

Gorilla11
Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 24.04.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.04.2018, 09:22     Titel: Probleme mit eingelesenen Werten aus GUI
  Antworten mit Zitat      
Hallo Zusammen,

ich habe heute meine erste GUI programmiert, mit der ich Werte nach der Eingabe durch den Nutzer einlesen und verschiedenen Variablen zuordnen möchte.

--> Das hat soweit funktioniert.

Durch Betätigung eines Buttons schließt sich die GUI wieder und den Variablen werden die eingegebenen Werte zugeordnet. Zum Überprüfen habe ich die Variablen dann einfach kurz die Werte ausgeben lassen.

--> Das hat soweit funktioniert.

Nun wollte ich ins Programm eine kleine Berechnung einbauen, die mit den Variablen arbeitet. das Programm ist total einfach, und besteht aus 5 Zeilen oder so.
Ich habe jetzt das Programm, dass sich die GUI nicht mehr wie zuvor mittels Button schließen lässt.
Ich denke das Programm will zunächst die Berechnung durchführen, kennt aber zu diesem Zeitpunkt die Variablen noch nicht, die ich nach der Eingabe in einer Caseabfrage zuordne.

Habt ihr eine Idee, woran das liegt?

Anbei mein Code (nicht erschrecken: das meiste ist die GUI). Smile

Code:

function varargout = Oberflaeche_Pruefstand(varargin)
% OBERFLAECHE_PRUEFSTAND MATLAB code for Oberflaeche_Pruefstand.fig
%      OBERFLAECHE_PRUEFSTAND, by itself, creates a new OBERFLAECHE_PRUEFSTAND or raises the existing
%      singleton*.
%
%      H = OBERFLAECHE_PRUEFSTAND returns the handle to a new OBERFLAECHE_PRUEFSTAND or the handle to
%      the existing singleton*.
%
%      OBERFLAECHE_PRUEFSTAND('CALLBACK',hObject,eventData,handles,...) calls the local
%      function named CALLBACK in OBERFLAECHE_PRUEFSTAND.M with the given input arguments.
%
%      OBERFLAECHE_PRUEFSTAND('Property','Value',...) creates a new OBERFLAECHE_PRUEFSTAND or raises the
%      existing singleton*.  Starting from the left, property value pairs are
%      applied to the GUI before Oberflaeche_Pruefstand_OpeningFcn gets called.  An
%      unrecognized property name or invalid value makes property application
%      stop.  All inputs are passed to Oberflaeche_Pruefstand_OpeningFcn via varargin.
%
%      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one
%      instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help Oberflaeche_Pruefstand

% Last Modified by GUIDE v2.5 27-Apr-2018 08:13:49

% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',       mfilename, ...
                   'gui_Singleton',  gui_Singleton, ...
                   'gui_OpeningFcn', @Oberflaeche_Pruefstand_OpeningFcn, ...
                   'gui_OutputFcn',  @Oberflaeche_Pruefstand_OutputFcn, ...
                   'gui_LayoutFcn',  [] , ...
                   'gui_Callback',   []);

if nargin && ischar(varargin{1})
    gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
    [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
    gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT


% --- Executes just before Oberflaeche_Pruefstand is made visible.
function Oberflaeche_Pruefstand_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 Oberflaeche_Pruefstand (see VARARGIN)

% Choose default command line output for Oberflaeche_Pruefstand
handles.output = hObject;
set(gcf,'Color',[0 0 0]);
% Update handles structure
guidata(hObject, handles);

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


% --- Outputs from this function are returned to the command line.
function varargout = Oberflaeche_Pruefstand_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;
imshow('Logo.gif');


function edit_Callback(hObject, eventdata, handles)
% hObject    handle to edit (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 edit as text
%        str2double(get(hObject,'String')) returns contents of edit as a double


% --- Executes during object creation, after setting all properties.
function edit_CreateFcn(hObject, eventdata, handles)
% hObject    handle to edit (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)
v_soll          = eval(get(handles.edit,'String'));
d_pro           = eval(get(handles.edit1,'String'));
d_rohr          = eval(get(handles.edit2,'String'));

function edit1_Callback(hObject, eventdata, handles)
% hObject    handle to edit1 (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 edit1 as text
%        str2double(get(hObject,'String')) returns contents of edit1 as a double


% --- Executes during object creation, after setting all properties.
function edit1_CreateFcn(hObject, eventdata, handles)
% hObject    handle to edit1 (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

function edit2_Callback(hObject, eventdata, handles)
% hObject    handle to edit2 (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 edit2 as text
%        str2double(get(hObject,'String')) returns contents of edit2 as a double


% --- Executes during object creation, after setting all properties.
function edit2_CreateFcn(hObject, eventdata, handles)
% hObject    handle to edit2 (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



% ***************************************************************************
% ****************************** Berechnung *********************************
% ***************************************************************************



switch (d_rohr)
    case 4
        A_Rohr  = pi * (2^2);

    case 6
        A_Rohr  = pi * (3^2);

    case 8
        A_Rohr  = pi * (4^2);

    case 10
        A_Rohr = pi * (5^2);
   
    case 12
        A_Rohr = pi * (6^2);

    case 14
        A_Rohr = pi * (7^2);
       
    otherwise
        disp('Für diesen Rohrdurchmesser ist keine Berechnung hinterlegt');
       
end    

switch (d_pro)
    case 4
        masse = 0.00003;

    case 6
        masse  = 0.00007;

    case 8
        masse  = 0.00027;

    case 10
        masse = 0.00052;
   
    case 12
        masse = 0.00094;

    case 14
        masse = 0.00143;
       
    otherwise
        disp('Für dieses Projektil ist keine Berechnung hinterlegt');
       
end


A_Schlauch   = pi * (5.42^2);
Verhaeltnis_Querschnitte = A_Schlauch / A_Rohr;

s_Hohlrohr_konstant = 1;

p   = ((v_soll.' * v_soll * masse)  / (2 * A_Rohr * s_Hohlrohr_konstant));      % Ergebnis in N/m^2

p_b = p * (10^5);

p_final = p_b / Verhaeltnis_Querschnitte
 


Herzlichen Dank und viele Grüße aus Hamburg.
Private Nachricht senden Benutzer-Profile anzeigen


Goraker
Forum-Anfänger

Forum-Anfänger


Beiträge: 30
Anmeldedatum: 04.04.18
Wohnort: ---
Version: R2016b
     Beitrag Verfasst am: 27.04.2018, 10:02     Titel:
  Antworten mit Zitat      
Schreib deine Berechnung in den Bereich des Pushbuttons unter die eingelesenen Variablen. Es soll ja nach dem betätigen einlesen und direkt berechnen oder?
So funktioniert es bei mir
Private Nachricht senden Benutzer-Profile anzeigen
 
Gorilla11
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 6
Anmeldedatum: 24.04.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.04.2018, 10:07     Titel:
  Antworten mit Zitat      
SUPER!

Herzlichen Dank!
Nun gibt es doch sicherlich auch noch eine Funktion mit der ich den Berechneten Wert auch wieder in der Gui ausgeben kann, oder? Smile

Herzlichen Dank!
Private Nachricht senden Benutzer-Profile anzeigen
 
Goraker
Forum-Anfänger

Forum-Anfänger


Beiträge: 30
Anmeldedatum: 04.04.18
Wohnort: ---
Version: R2016b
     Beitrag Verfasst am: 27.04.2018, 10:20     Titel:
  Antworten mit Zitat      
Das erste ist der Tag der Textbox in der du es Anzeigen willst
Code:

set (handles.Tag_ergebnisbox,'String',p_final);
 
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.