Mo Logo [Home] [Lexikon] [Aufgaben] [Tests] [Kurse] [Begleitmaterial] [Hinweise] [Mitwirkende] [Publikationen]

Mathematik-Online-Kurs: MATLAB - Programmierung

Befehle zur Benutzerinteraktion


[vorangehende Seite] [nachfolgende Seite] [Gesamtverzeichnis][Seitenübersicht]

Zur Unterstützung der Interaktion mit dem Benutzer innerhalb von Skripten und Funktionen stehen (neben uicontrol- und uimenu-Objekten) unter anderem folgenden Hilfsfunktionen zur Verfügung:
 input Eingabeaufforderung an den Benutzer
 inputdlg Eingabefeld in einem Dialogfenster
 keyboard zweitweilig Übergabe der Kontrolle an den Benutzer
 uigetfile Standarddialog zur Auswahl einer Eingabedatei
 uigetdir Standarddialog zur Auswahl eines Verzeichnisses
 uiputfile Standarddialog zur Auswahl einer Ausgabedatei
 msgbox Meldungsfenster
 errordlg Dialogfenster für Fehlermeldungen
 helpdlg Dialogfenster für Hilfestellungen
 questdlg Dialogfenster für Abfragen
 warndlg Dialogfenster für Warnmeldungen
 ginput graphische Eingaben mit der Maus
(Autoren: Hörner/Wipper)

Download:

(Dateityp: .m, 758 ,  29.03.2007)

Mit Hilfe der Funktion
input(Erläuterungstext)
erfolgt eine Eingabeaufforderung an den Benutzer. Die Eingabe wird von MATLAB interpretiert und zurückgegeben:
  >> M=input('Bitte (nx2)-Matrix der Messpunkte eingeben: ')
  Bitte (nx2)-Matrix der Messpunkte eingeben: [1 2;4 1;5 1] 
  M =
       1     2
       4     1
       5     1
  
  >> M=input('Bitte (nx2)-Matrix der Messpunkte eingeben: ')
  Bitte (nx2)-Matrix der Messpunkte eingeben: rand(2)
  M =
      0.4966    0.8216
      0.8998    0.6449
Sofern die Interpretation der Eingabe durch MATLAB nicht erwünscht ist, kann durch Angabe von 's' als zweiter Parameter von input die Rückgabe als string erzwungen werden:
  >> Fct=input('Bitte geben Sie einen Funktionsnamen ein: ');
  Bitte geben Sie einen Funktionsnamen ein: sin
  ??? Error using ==> sin
  Incorrect number of inputs.
  
  >> Fct=input('Bitte geben Sie einen Funktionsnamen ein: ','s')
  Bitte geben Sie einen Funktionsnamen ein: sin
  Fct =
  sin
(Autoren: Hörner/Wipper)

Als Beipiel für eine grafische Eingabe wird mit dem folgenden Programm eine Ellipse gezeichnet.


function ellipse
% zeichnet eine Ellipse

% Grafikfenster öffnen
clf; hold on;
axis([-10 10 -10 10]);

% Eingabe von Mittelpunkt und Halbachsenlängen
[x,y] = ginput(1);
plot(x, y,'ro');
H = inputdlg({'a:', 'b:'}); 
a = str2num(H{1}); b = str2num(H{2});

% Zeichnen der Ellipse
t = linspace(0,2*pi);
plot(x+a*cos(t), y+b*sin(t));

Zunächst werden die Dimensionen des Grafikfensters festgelegt. Nach Öffnen des Fensters können mit der Maus (Anklicken der linken Taste) die Koordinaten des Mittelpunktes eingegeben werden (ginput). Dann werden die Halbachsenlängen in einem Dialogfenster abgefragt (inputdlg). Der Cell-Array H enthält die eingegebenen Werte als Character-Strings. Deshalb ist eine Konvertierung durch str2num notwendig. Schliesslich wird die Ellipse gezeichnet.

(Autoren: Gutzer/Hager/Rolla/Stubenvoll)

[vorangehende Seite] [nachfolgende Seite] [Gesamtverzeichnis][Seitenübersicht]

  automatisch erstellt am 5.2.2008