5. Programmierung von Benutzerschnittstellen

Größe: px
Ab Seite anzeigen:

Download "5. Programmierung von Benutzerschnittstellen"

Transkript

1 5. Programmierung von Benutzerschnittstellen Inhalt: Rolle des Betriebssystems Win32 Programmierung mit Fenstern und Grafikausgabe Objektorientierte Programmierung von Benutzerschnittstellen mit Qt weitere Aspekte Peter Sobe 1

2 Qt Qt ist ein s.g. Widget-Toolkit zur Programmierung grafischer Benutzeroberflächen (engl. GUI) GUI: Graphical User Interface Widget: Komponente in einem grafischen Fenstersystem (vgl. Gadget, als kleines tragbares technisches Gerät) Qt ist als C++ Klassenbibliothek mit zusätzlichen Dienstprogrammen, z.b. MOC-Compiler, QT-Designer realisiert Peter Sobe 2

3 Qt Ein QT-Programm ist wesentlich übersichtlicher als ein Win32-Programm. Mini-Beispiel: #include <QApplication> #include <QPushButton> int main(int argc, char *argv[]) { QApplication a(argc, argv); QPushButton *button = new QPushButton("Ende"); button->show(); } QObject::connect(button, SIGNAL (clicked()), QApplication::instance(), SLOT (quit())); return a.exec(); Peter Sobe 3

4 Qt Qt-Designer als eigene Entwicklungsumgebung Die Qt-Bibliothek kann auch in Visual-Studio integriert werden. Peter Sobe 4

5 Qt Prinzipien: GUI-Komponenten sind Objekte, die zum Teil aus vorgefertigten Klassen instanziiert werden können. Neue Klassen d.h. neue GUI-Komponenten durch abgeleitete Klassen und durch neu erstellte Klassen, die mehrere GUI- Komponenten (Objekte) enthalten (Komposition) Die Bedienoberfläche besteht aus hierarchisch ineinander platzierten GUI-Komponenten (Widgets) MyWindow (public QMainWindow) QTextEdit QPushButton QPushButton Peter Sobe 5

6 Qt Prinzipien (Fortsetzung): Signal-Slot-Prinzip. Bedienereignisse (Button-Click, Scrollen) lösen Ereignisse (Signals) aus. Für diese Ereignisse werden Slotsprogrammiert, die Methoden aufrufen können Peter Sobe 6

7 Qt: Signal/Slot-Prinzip Signale werden von Widget-Objekten ausgesendet (emittiert, engl. emit) Die Entgegennahme erfolgt durch s.g. Slots, von denen ausgehend Methoden von QT-Klassen aufgerufen werden. Beispiel: QPushButton clicked() QApplication quit() Im Quellcode: QApplication appl(argc,argv); QPushButton button = new QPushButton( Beenden ); // QObject::connect(button, SIGNAL (clicked()), &appl, SLOT (quit()) ); Peter Sobe 7

8 Qt: Signal/Slot-Prinzip Signal/Slot-Prinzip: SIGNAL() und SLOT() sind C-Makros, die als Argumente Methoden der beteiligten Objekte erwarten. Ein Signal kann mit mehreren Slots verbunden werden. Mehrere Signale können mit einem Slot verbunden werden Frühere GUI-Bibliotheken nutzen die klassische Variante mit Callback- Funktionen, die an Bedienelemente gebunden wurden. Das von Qt benutze Signal/Slot-Prinzip ist flexibler und weniger fehleranfällig. Beispielsweise erfolgt beim Freigeben von Instanzen eine automatische Deaktivierung deren Slots; damit werden Programmabstürze vermieden. Peter Sobe 8

9 Qt: Klassen mit Signalen und Slots Signale und Slots werden an Klassen gebunden: Slot: Eine Methode die z. B. als public slot: void incrvalue(); deklariert wird. Ähnlich wie public, protected, private kann public slot verwendet werden. Die programmierte Methode (hier incrvalue()) wird aufgerufen, wenn ein Signal für den Slot vorliegt. Hinweis: public slot ist keine C++ Syntax und verlangt, dass der MOC eine Vorverarbeitung durchführt, die das Programm in Standerd-C++-Syntax überführt. Peter Sobe 9

10 Qt: Klassen mit Signalen und Slots Signal deklarieren und emittieren: In der Klassendeklaration muss eine Methode wie folgt enthalten sein: signals: void signalcarry(); // signalsiert einen Übertrag Die Methode signalcarry() wird nicht implementiert, sondern automatisch vom MOC erzeugt. In anderen Methoden der Klasse wird anwendungsspezifisch emit signalcarry(); aufgerufen. Hinweis: Auch die Verwendung von signals und emit ist keine Standard C++ Syntax und setzt die Umwandlung in C++ durch den MOC voraus Peter Sobe 10

11 Qt: Klassen mit Signalen und Slots Klasse cntr mit Slot für Incr und Signal für Carry: #include <QObject> class cntr :public QObject { Q_OBJECT public: cntr(int nvalues); int value(); public slots: void slot_incr(); signals: void carry(); private: int z; int nv; }; Zähler (cntr) soll von n bis nvalues-1 zählen und danach wieder auf Null springen. Übertrag soll durch die Signal- Methode carry() signalisiert werden. Peter Sobe 11

12 Qt: Klassen mit Signalen und Slots Nutzung der Klasse cntr: cntr counter(10); // im Hauptfenster connect(incrbutton, SIGNAL (clicked()), &counter, SLOT (slot_incr())); connect(&counter, SIGNAL(carry()), this, SLOT(slotShowCarry())); Die Slot-Methode des Hauptfensters zeigt den Übertrag an: void MyWindow::slotShowCarry() { QMessageBox msg(qmessagebox::information, QString("Information"), QString("Carry"),QMessageBox::Ok); msg.exec(); } Peter Sobe 12

13 Qt: Anordnung mehrerer Widgets Wie im Beispiel rechts sollen drei Knöpfe (Objekte des Klassentyps PushButton) untereinander angeordnet werden. Manuell programmiert: int main(int argc, char *argv[]) { QApplication a(argc, argv); QMainWindow *win = new QMainWindow(); QPushButton* b1 = new QPushButton("Max",win); QPushButton* b2 = new QPushButton("Min",win); QPushButton* b3 = new QPushButton("Quit",win); win->resize(120,180); b1->setgeometry(10,10,100,50); b2->setgeometry(10,65,100,50); b3->setgeometry(10,120, 100,50); // } win->show(); return a.exec(); x-pos.,y-pos., x-ausdehnung, y-ausdehnung Peter Sobe 13

14 Qt: Anordnung mehrerer Widgets Nutzung eines Layout-Manager-Objekts: int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget *win = new QWidget; win->resize(120,180); QVBoxLayout *layout_obj = new QVBoxLayout(win); QPushButton* b1 = new QPushButton("Max"); QPushButton* b2 = new QPushButton("Min"); QPushButton* b3 = new QPushButton("Quit"); b1->resize(100,50); b2->resize(100,50); b3->resize(100,50); } layout_obj->addwidget(b1); layout_obj->addwidget(b2); layout_obj->addwidget(b3); win->show(); return a.exec(); Peter Sobe 14

15 Qt: Anordnung mehrerer Widgets Nutzung eines Layout-Manager-Objekts: VBoxLayout und HBoxLayout QHBoxLayout *layout_obj = new QHBoxLayout(win); QPushButton* b1 = new QPushButton("Max"); QPushButton* b2 = new QPushButton("Min"); QPushButton* b3 = new QPushButton("Quit"); Peter Sobe 15

16 Einzelne Klassen in Qt Klassenhierarchie QObject QThread QWidget QAbstractButton QFrame QProgressBar QCheckBox QPushButton QRadioButton QAbstractScroll Area QGraphicsView QLabel QTextEdit Peter Sobe 16

17 Einzelne Klassen in Qt QMainWindow Wird als Hauptfenster einer Qt-Anwendung benutzt. Typischerweise leitet ein Programmierer eine neue Klasse, z.b. mywinwow von QMainWindow ab und platziert eigene Elemente im Fenster. Beispiel: MyWindow::MyWindow(){ addbutton = new QPushButton( Berechnen",this); addbutton->setgeometry(10, 110, 50, 40); Dokumentation unter: Peter Sobe 17

18 Einzelne Klassen in Qt QMainWindow QMainWindow enthält eine Menu Bar und eine Status Bar als untergeordnete Widgets. Datei Modell abc.mod geladen QMainWinwod *win = new QMainWindow(); QMenu *filemenu = win>menubar()->addmenu("&datei"); filemenu->addaction("&beenden", myapp, SLOT(quit())); win->show(); win->statusbar()->showmessage(tr( Modell geladen"), 2000); Peter Sobe 18

19 Einzelne Klassen in Qt QLineEdit QLineEdit stellt eine einzeilige Ein- und Ausgabe-Box bereit MyWindow::MyWindow(){ lab = new QLabel(tr( Ein und Ausgabe"),this); eingabebox= new QLineEdit(this); ausgabebox = new QLineEdit(this); void MyWindow::ButtonClicked() // eine Slot-Methode { Qstring e,a; e = eingabebox()->text(); a.sprintf( %lf, e.todouble() * 2.0); ausgabebox->settext(a); // hier wird der Wert der Eingabe verdoppelt //ausgegeben Peter Sobe 19

20 Einzelne Klassen in Qt QTextEdit QTextEdit stellt eine mehrzeilige Editorfläche für Text bereit. Der Text kann durch einen Konstruktorparameter gesetzt werden. Konstruktoren: QTextEdit(QWidget *parent = 0); explicit QTextEdit(const QString &text, QWidget *parent = 0); Weitere Methoden (public slots): void settext(const QString &text); QString toplaintext() const; Auswahl vordefinierter Signale: void selectionchanged(); void textchanged(); Peter Sobe 20

21 Einzelne Klassen in Qt QTextEdit Beispiel eines einfachen Texteditors: #include <QApplication> #include <QTextEdit> QTextEdit *tedit = new QTextEdit(); // Setzen des Inhalts Qstring str; str.append(tr("das ist ein netter Text.")); tedit->settext(str); // Lesen und Weiterverarbeiten des Inhalts QByteArray asciistr; str = tedit->toplaintext(); asciistr = str.tolocal8bit(); Peter Sobe 21

22 Einzelne Klassen in Qt QCheckBox QCheckBox stellt eine einfache Auswahloption (angekreuzt oder nicht) mit einer typischerweise rechteckigen Box mit oder ohne Häkchen dar. #include <QCheckBox> QCheckBox *cb1 = new QCheckBox( Fensterplatz gewünscht ); QCheckBox *cb2 = new QCheckBox( Gepäck aufgeben ); cb2->setcheckstate(qt::checked); // Platzieren cb1 und cb1 in Window, Dialog oder Layout // Verbinden des Signals statechanged(int) mit einer Slot-Methode, die // z.b. von der Fensterklasse bereitgestellt wird connect(cb1, SIGNAL(stateChanged(int), this, SLOT(auswertung(int))); // void MyWindow::auswertung(int state) { if (state==qt::checked) fenster=true; else fenster=false; } Hier wird über die Siglnal- Slot-Verbindung ein Parameter (Typ int) übertragen. Peter Sobe 22

23 QRadioButton Einzelne Klassen in Qt QRadioButton stellt einen Knopf innerhalb einer Knopfgruppe dar, in der nur der zuletzt gesetzte ausgewählt ist (vgl. Radio-Knöpfe UKW/MW/LW) #include <QRadioButton> #include <QGroupBox> QGroupBox* group = new QGroupBox( Wellenbereiche ); QRadioButtion *rb1 = new QRadioButton( UKW ); QRadioButtion *rb2 = new QRadioButton( MW ); rb1->setchecked(true); QVBoxLayout *vbox= new QVBoxLayout; vbox->addwidget(rb1); vbox->addwidget(rb2); group->setlayout(vbox); QVBoxLayout *vvbox = new QVBoxLayout; vvbox-> addwidget(group); setlayout(vvbox); // Umgebendes Fenster nimmt hier die Knopf-Gruppe auf Jedes RadioButton-Objekt stellt eine Signal-Methode toggled(bool) bereit. Peter Sobe 23

24 Einzelne Klassen in Qt QFileDialog QFileDialog erlaubt die Auswahl eines Dateinamens zum Laden oder Speichern einer Datei. Der Dateiauswahldialog wird vom Betriebssystem (Windows) oder dem Fenstermanager (KDE/Linux) bereitgestellt. QString filename; QFileDialog *fdlg = new QFileDialog(this, Wählen Sie ); fdlg->setfilemode(qfiledialog::existingfiles); // if (fdlg->exec()) // exec() ergibt false, wenn Auswahl abgebrochen filename = fdlg->selectedfiles(); Peter Sobe 24

25 Static-Methoden Oft stellen Klassen Methoden bereit, die man auch ohne eine Instanziierung eines Objekt benutzen kann Beispiel: Qstring fn; fn = QFileDialog::getOpenFileName( Bitte Datei auswählen, Qdir::homePath(), Alle Dateien (*.*) ); // Weiterverarbeitung fn Peter Sobe 25

26 Static-Methoden Oft stellen Klassen Methoden bereit, die man auch ohne eine Instanziierung eines Objekt benutzen kann Beispiel: Qstring fn; fn = QFileDialog::getOpenFileName( Bitte Datei auswählen, Qdir::homePath(), Alle Dateien (*.*) ); // Weiterverarbeitung fn Peter Sobe 26

27 Static-Methoden class constants { public: static double e() { return ; } static double pi() { return ; } }; // eine 'normale' Methode double zweimal_pi_mal_freq(double f) { return 2.0 * constants::pi() *f;} Aufruf der Static-Methoden ohne Objekt: cout << "e="<<constants::e() << endl; cout << "pi="<<constants::pi() << endl; Aufruf normaler Methoden: constants ccc; double wert = ccc.zweimal_pi_mal_freq(120.55); Peter Sobe 27

28 Elementobjekte als Static Member Elementobjekte werden normalerweise in jedem Objekt instanziiert. Ein Beispiel ist die Klasse Linie mit zwei Punkt-Objekten. Static-Member: Ein als static deklariertes Elementobjekt führt zu einer einzigen gemeinsamen Instanz für alle Objekte einer Klasse. Beispiel einer Instanz-Nr., die unter allen Instanzen geteilt wird. class element { private: static int inr; }; element e1, e2, e3, e4; // Es entstehen vier Instanzen der Klasse element, aber nur eine Integer-Variable inr. Peter Sobe 28

29 Elementobjekte als Static Member class element { private: }; public: char bezeichung[100]; static int inr; element(char *bez) { strcpy(bezeichung, bez); inr++; } char * get_bezeichung() { return bezeichung;} static int get_instanz_nr(){ return inr;} int element::inr = 0; // ausserhalb der Klasse zu deklarieren Peter Sobe 29

Grundlagen der Informatik Entwicklung von Anwendungen mit dem Qt-Framework

Grundlagen der Informatik Entwicklung von Anwendungen mit dem Qt-Framework Grundlagen der Informatik Entwicklung von Anwendungen mit dem Qt-Framework Prof. Dr.-Ing. habil. Peter Sobe Prof. Dr.-Ing. Thomas Wiedemann Fachgebiet Informatik / Mathematik Qt Benutzerschnittstellen

Mehr

5. Programmierung von Benutzerschnittstellen mit Qt

5. Programmierung von Benutzerschnittstellen mit Qt 5. Programmierung von Benutzerschnittstellen mit Qt Eine kurzer Überblick zur objektorientierten Programmierung von Benutzerschnittstellen mittels C++ und Qt. Alternativen zur Realisierung von Benutzerschnittstellen:

Mehr

5. Programmierung von Benutzerschnittstellen mit Qt

5. Programmierung von Benutzerschnittstellen mit Qt 5. Programmierung von Benutzerschnittstellen mit Qt Eine kurzer Überblick zur objektorientierten Programmierung von Benutzerschnittstellen mittels C++ und Qt. Alternativen zur Realisierung von Benutzerschnittstellen:

Mehr

Was ist QT? Beispiele: KDE Google Earth Mathematika

Was ist QT? Beispiele: KDE Google Earth Mathematika Einführung in QT Was ist QT? QT ist eine Klassenbibliothek für plattformübergreifende Programmierung graphischer Benutzeroberflächen QT ist für verschiedene Graphikplattformen wie X11 (Unix), Windows,

Mehr

Qt Programmierung Teil 1 Fenster erstellen by NBBN (http://nbbn.wordpress.com) CrashKurs-Artig. Was brauche ich? -Einige C++ Kenntnisse

Qt Programmierung Teil 1 Fenster erstellen by NBBN (http://nbbn.wordpress.com) CrashKurs-Artig. Was brauche ich? -Einige C++ Kenntnisse Qt Programmierung Teil 1 Fenster erstellen by NBBN (http://nbbn.wordpress.com) CrashKurs-Artig. Was brauche ich? -Einige C++ Kenntnisse Wie man in C++ mit Hilfe von Qt GUI-Anwendungen programmieren kann.

Mehr

Praktikum IKT 3. Semester

Praktikum IKT 3. Semester Praktikum IKT 3. Semester Dr. Andreas Müller, TU Chemnitz, Fakultät für Informatik Inhaltsverzeichnis 1 1 Einführung in QT 1.1 Die QT-Bibliothek Informationen: http://www.trolltech.com Lehner, B: KDE-

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Was ist eine GUI? Was ist QT? Erste Schritte:

Mehr

GUI Programmierung mit Qt

GUI Programmierung mit Qt GUI Programmierung mit Qt C++ vs. JAVA Norman Wolf 22.04.05 GUI Programmierung mit Qt 1 Einleitung Qt wird von der norwegischen Firma Trolltech entwickelt Es ist kommerzielle Software, die aber von Trolltech

Mehr

Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung:

Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Gute Lösung: Funktionen Häufig müssen bestimmte Operationen in einem Programm mehrmals ausgeführt werden. Schlechte Lösung: Der Sourcecode wird an den entsprechenden Stellen im Programm wiederholt Programm wird lang

Mehr

Interaktive Simulationen Lektion 1/3: Event-Driven Design und Signals

Interaktive Simulationen Lektion 1/3: Event-Driven Design und Signals MÜNSTER Interaktive Simulationen Lektion 1/3: Event-Driven Design und Signals Prof. Dr. Christian Engwer & Andreas Buhr 16. April 2014 MÜNSTER Interaktive Simulationen 2 /22 Normales C++ Programm Programmstruktur

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Vorkurs C++ Programmierung

Vorkurs C++ Programmierung Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:

Mehr

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur

Mehr

Einführung in die Programmierung Wintersemester 2011/12

Einführung in die Programmierung Wintersemester 2011/12 Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : GUI-Programmierung Inhalt Was ist eine GUI? Was

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 22 Kapitel 19 Vererbung, UML Seite 1 von 22 Vererbung - Neben der Datenabstraktion und der Datenkapselung ist die Vererbung ein weiteres Merkmal der OOP. - Durch Vererbung werden die Methoden und die Eigenschaften

Mehr

Java Kurs für Anfänger Einheit 4 Klassen und Objekte

Java Kurs für Anfänger Einheit 4 Klassen und Objekte Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

d:\c++\semesterarbeit\lottosix\lottosix.cpp /* ======================================================================== Dateiname: lottosix.

d:\c++\semesterarbeit\lottosix\lottosix.cpp /* ======================================================================== Dateiname: lottosix. /* ======================================================================== Dateiname: lottosix.cpp 1 Zweck: Semesterarbeit ============== Erstellt ein QWidget in welchem Lottozahlen gezogen und verglichen

Mehr

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {... PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:

Mehr

Innere Klassen in Java

Innere Klassen in Java Innere Klassen in Java SS 2012 Prof. Dr. Margarita Esponda Innere Klassen Klassen- oder Interfacedefinitionen können zur besseren Strukturierung von Programmen verschachtelt werden Eine "Inner Class" wird

Mehr

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu)

Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) HMExcel Automatisierung ( Fernsteuerung ) von Excel unter Microsoft Windows Tilman Küpper (tilman.kuepper@hm.edu) Inhalt 1. Einleitung...1 2. Beispiele...2 2.1. Daten in ein Tabellenblatt schreiben...2

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Anwenderdokumentation PersoSim

Anwenderdokumentation PersoSim Anwenderdokumentation PersoSim Die nachfolgende Anwenderdokumentation soll dem Anwender bei der Installation und den ersten Schritten im Umgang mit PersoSim helfen. Installation Grundvoraussetzung für

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

Objektbasierte Entwicklung

Objektbasierte Entwicklung Embedded Software Objektbasierte Entwicklung Objektorientierung in C? Prof. Dr. Nikolaus Wulff Objektbasiert entwickeln Ohne C++ wird meist C im alten Stil programmiert. => Ein endlose while-schleife mit

Mehr

Einführung in die Programmierung (EPR)

Einführung in die Programmierung (EPR) Goethe-Center for Scientific Computing (G-CSC) Goethe-Universität Frankfurt am Main Einführung in die Programmierung (EPR) (Übung, Wintersemester 2014/2015) Dr. S. Reiter, M. Rupp, Dr. A. Vogel, Dr. K.

Mehr

Dokumentation zum Spielserver der Software Challenge

Dokumentation zum Spielserver der Software Challenge Dokumentation zum Spielserver der Software Challenge 10.08.2011 Inhaltsverzeichnis: Programmoberfläche... 2 Ein neues Spiel erstellen... 2 Spielfeldoberfläche... 4 Spielwiederholung laden... 5 Testdurchläufe...

Mehr

Prinzipien Objektorientierter Programmierung

Prinzipien Objektorientierter Programmierung Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................

Mehr

Native Zeichenketten (C-Strings)

Native Zeichenketten (C-Strings) Native Zeichenketten (C-Strings)... sind in C/C++ char-arrays. D.h. die Deklaration char msg[80]; kann Zeichenketten bis zur Länge 79 enthalten. (Direkte Zuweisungen wie msg="hallo!" sind jedoch nicht

Mehr

Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter

Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter Informatik 2 Labor 2 Programmieren in MATLAB Georg Richter Aufgabe 3: Konto Um Geldbeträge korrekt zu verwalten, sind zwecks Vermeidung von Rundungsfehlern entweder alle Beträge in Cents umzuwandeln und

Mehr

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Objektorientierte Programmierung für Anfänger am Beispiel PHP Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten

Mehr

LISP. Eine Einführung

LISP. Eine Einführung LISP Eine Einführung 5. OBERFLÄCHLICHES Übersicht 2 5.1 Verschiedenes zum letzten Aufgabenblatt 5.2 Geschwister und Komponenten oder wie finde ich was 5.3 on-click-methoden und on-change-methoden 5.1 Musterlösung

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:

Mehr

Typumwandlungen bei Referenztypen

Typumwandlungen bei Referenztypen Typumwandlungen bei Referenztypen Genau wie es bei einfachen Typen Typumwandlungen gibt, gibt es auch bei Referenztypen Umwandlungen von einem Referenztypen in einen anderen Referenztypen, die wie bei

Mehr

Tel.: 040-528 65 802 Fax: 040-528 65 888 Email: support_center@casio.de. Ein Text oder Programm in einem Editor schreiben und zu ClassPad übertragen.

Tel.: 040-528 65 802 Fax: 040-528 65 888 Email: support_center@casio.de. Ein Text oder Programm in einem Editor schreiben und zu ClassPad übertragen. Ein Text oder Programm in einem Editor schreiben und zu ClassPad übertragen. Die auf dem PC geschriebene Texte oder Programme können über dem ClassPad Manager zu ClassPad 300 übertragen werden. Dabei kann

Mehr

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Howto Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Peter Bitterlich Markus Langer 12. Oktober 2012 Zusammenfassung Dieses Dokument erklärt Schritt für Schritt die Installation

Mehr

Einführung in die Java- Programmierung

Einführung in die Java- Programmierung Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113

Mehr

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet

C++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet C++ Grundlagen ++ bedeutet Erweiterung zum Ansi C Standard Hier wird eine Funktion eingeleitet Aufbau: In dieser Datei stehen die Befehle, die gestartet werden, wenn das Programm gestartet wird Int main()

Mehr

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek

Programmieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek Programmieren I Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2008/2009 1 / 22 2 / 22 Strategie zum Entwurf von Klassen Beispiele Objektorientierte Sichtweise: Mit welchen Objekten habe ich es

Mehr

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005

Einführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005 Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:

5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: 5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel Beispiel (3) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Probleme des Implementierungsvorschlags:

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin

Mehr

Grafische Benutzeroberfläche mit Glade und Python

Grafische Benutzeroberfläche mit Glade und Python Grafische Benutzeroberfläche mit Glade und Python Grundsätzliches Die grafische Benutzeroberfläche (GUI) wird getrennt von dem Programm erstellt und gespeichert. Zu dieser GUI-Datei wird ein passendes

Mehr

Einführung in Javadoc

Einführung in Javadoc Einführung in Javadoc Johannes Rinn http://java.sun.com/j2se/javadoc Was ist Javadoc? Javadoc ist ein Werkzeug, dass eine standardisierte Dokumentation für die Programmiersprache Java unterstützt. Vorteil:

Mehr

SEP 114. Design by Contract

SEP 114. Design by Contract Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit

Mehr

Grundlagen von Python

Grundlagen von Python Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In

Mehr

Java Einführung Abstrakte Klassen und Interfaces

Java Einführung Abstrakte Klassen und Interfaces Java Einführung Abstrakte Klassen und Interfaces Interface Interface bieten in Java ist die Möglichkeit, einheitliche Schnittstelle für Klassen zu definieren, die später oder/und durch andere Programmierer

Mehr

Kurzanleitung So geht s

Kurzanleitung So geht s Kurzanleitung So geht s MDT IP Interface SCN IP000.01 MDT IP Router SCN IP100.01 IP Interface IP Router einrichten Es wurden keine Einträge für das Inhaltsverzeichnis gefunden.falls Sie Basis Informationen

Mehr

Tutorial - www.root13.de

Tutorial - www.root13.de Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk

Mehr

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte

Mehr

Selbststudium OOP4 Auftrag

Selbststudium OOP4 Auftrag Selbststudium OOP4 Auftrag Kapitel 3.6 1. Wie deklarieren Sie eine Referenzvariable? Mit new z.b. Student studenta = new Stundent( Meier ); 2. Zeichnen Sie das Objektdiagramm zum BlueJ Picture Projekt

Mehr

Bedienung von BlueJ. Klassenanzeige

Bedienung von BlueJ. Klassenanzeige Im Folgenden werden wichtige Funktionen für den Einsatz von BlueJ im Unterricht beschrieben. Hierbei wird auf den Umgang mit Projekten, Klassen und Objekten eingegangen. Abgeschlossen wird dieses Dokument

Mehr

Erstellen einer PostScript-Datei unter Windows XP

Erstellen einer PostScript-Datei unter Windows XP Erstellen einer PostScript-Datei unter Windows XP Sie möchten uns Ihre Druckvorlage als PostScript-Datei einreichen. Um Fehler in der Herstellung von vorneherein auszuschließen, möchten wir Sie bitten,

Mehr

Delegatesund Ereignisse

Delegatesund Ereignisse Delegatesund Ereignisse «Delegierter» Methoden Schablone Funktionszeiger Dr. Beatrice Amrhein Überblick Definition eines Delegat Einfache Delegate Beispiele von Delegat-Anwendungen Definition eines Ereignisses

Mehr

5. Abstrakte Klassen

5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Vogel Amsel Drossel Fink Peter Becker, Programiersprache Java FH Bonn-Rhein-Sieg,

Mehr

GetName(), GetName(), GetGeschlecht() und AelterWerden().

GetName(), GetName(), GetGeschlecht() und AelterWerden(). 11. Vererbung Vererbung ist eine der mächtigsten Funktionalitäten der objektorientierten Programmiersprachen. Man versteht unter Vererbung die Tatsache, dass eine Klasse alle Methoden und Variablen einer

Mehr

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert

Mehr

Erstellen eines Screenshot

Erstellen eines Screenshot Blatt 1 von 5 Erstellen eines Screenshot Einige Support-Probleme lassen sich besser verdeutlichen, wenn der Supportmitarbeiter die aktuelle Bildschirmansicht des Benutzers sieht. Hierzu bietet Windows

Mehr

tentoinfinity Apps 1.0 EINFÜHRUNG

tentoinfinity Apps 1.0 EINFÜHRUNG tentoinfinity Apps Una Hilfe Inhalt Copyright 2013-2015 von tentoinfinity Apps. Alle Rechte vorbehalten. Inhalt der online-hilfe wurde zuletzt aktualisiert am August 6, 2015. Zusätzlicher Support Ressourcen

Mehr

efa elektronisches Fahrtenbuch im Berliner Ruder-Club

efa elektronisches Fahrtenbuch im Berliner Ruder-Club efa elektronisches Fahrtenbuch im Berliner Ruder-Club Bedienungsanleitung Allgemeine Hinweise: Das Papier-Fahrtenbuch wird ab 01. Januar 2006 im Berliner Ruder-Club durch das elektronische Fahrtenbuch

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Benutzeroberflächen. Java Teil 4

Benutzeroberflächen. Java Teil 4 Benutzeroberflächen Java Teil 4 Einleitung Eine grafische Benutzeroberfläche (Graphical User Interface) ermöglicht dem Benutzer die Interaktion mit dem Computer über grafische Symbole. Die GUI haben in

Mehr

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer.

Benutzerhandbuch. Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer. Benutzerhandbuch Leitfaden zur Benutzung der Anwendung für sicheren Dateitransfer. 1 Startseite Wenn Sie die Anwendung starten, können Sie zwischen zwei Möglichkeiten wählen 1) Sie können eine Datei für

Mehr

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

Prof. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Prof. Dr. Uwe Schmidt 21. August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten und fertigen

Mehr

Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren.

Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren. CLIENT INSTALLATION DES ENIQ ACCESSMANAGEMENTS Dieses Dokument soll dem Administrator helfen, die ENiQ-Software als Client auf dem Zielrechner zu installieren und zu konfigurieren. Ein Client kann in drei

Mehr

Sichtbarkeit & statische Methoden. Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben

Sichtbarkeit & statische Methoden. Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben Sichtbarkeit & statische Methoden Einsatz von Sichtbarkeit Einsatz statischer Methoden programmatische Realisierung 2 Beispielaufgaben Nicht sichtbare Methoden Wollen Eltern bestimmte Methoden vor den

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18 Kapitel 3 Datentypen und Variablen Seite 1 von 18 Datentypen - Einführung - Für jede Variable muss ein Datentyp festgelegt werden. - Hierdurch werden die Wertemenge und die verwendbaren Operatoren festgelegt.

Mehr

Stepperfocuser 2.0 mit Bootloader

Stepperfocuser 2.0 mit Bootloader Stepperfocuser 2.0 mit Bootloader Info Für den Stepperfocuser 2.0 gibt es einen Bootloader. Dieser ermöglicht es, die Firmware zu aktualisieren ohne dass man ein spezielles Programmiergerät benötigt. Die

Mehr

TEAMWORK-Uploader. Dokumentenaustausch mit dem PC

TEAMWORK-Uploader. Dokumentenaustausch mit dem PC TEAMWORK-Uploader Dokumentenaustausch mit dem PC Inhalt 1. Upload Ordner einrichten... 3 2. TEAMWORK mit lokalem Ordner verknüpfen... 3 3. Verwendung der Dokumentenarten... 5 3.1 Standarddokumente...5

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden. Track in Route umwandeln ACHTUNG: Ein Track kann nur dann in eine Route umgewandelt werden, wenn der Track auf Wegen gefahren wurde. Ein Querfeldein-Track kann nicht in eine Route umgewandelt werden, da

Mehr

Seite - 1 - 8. Out-Of-Band-Authentifizierung (OOBA) 8.1 Einleitung

Seite - 1 - 8. Out-Of-Band-Authentifizierung (OOBA) 8.1 Einleitung 8. Out-Of-Band-Authentifizierung (OOBA) 8.1 Einleitung Sie konfigurieren den OOBA, um die Webzugriffe mit HTTP ins Internet zu kontrollieren. Das Aufrufen von Webseiten ist nur authentifizierten Benutzern

Mehr

Wir wünschen Ihnen viel Freude und Erfolg mit Ihrem neuen X-PRO-USB-Interface. Ihr Hacker-Team

Wir wünschen Ihnen viel Freude und Erfolg mit Ihrem neuen X-PRO-USB-Interface. Ihr Hacker-Team Installationsanleitung Hacker X-PRO-USB-Controller V2 Software + Interface Sehr geehrter Kunde, wir freuen uns, dass Sie sich für das X-PRO-USB-V2-Interface aus unserem Sortiment entschieden haben. Sie

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:

II. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java: Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen

Mehr

Ihr CMS für die eigene Facebook Page - 1

Ihr CMS für die eigene Facebook Page - 1 Ihr CMS für die eigene Facebook Page Installation und Einrichten eines CMS für die Betreuung einer oder mehrer zusätzlichen Seiten auf Ihrer Facebook Page. Anpassen der "index.php" Installieren Sie das

Mehr

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Tutorial: Wie erfasse ich einen Termin? In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Neben den allgemeinen Angaben zu einem

Mehr

Inhaltstyp: Fotoalbum - Bilder in einer ansprechenden Form präsentieren. Erstellen eines Bildergalerieordners mit Bildern im Workplace

Inhaltstyp: Fotoalbum - Bilder in einer ansprechenden Form präsentieren. Erstellen eines Bildergalerieordners mit Bildern im Workplace 1 Inhaltstyp: Fotoalbum - Bilder in einer ansprechenden Form präsentieren Der Typ Fotoalbum kann Bilder anschaulich auf der Webseite als Bildergalerie darstellen. Dabei werden die Bilder als kleine Vorschaubilder

Mehr

Datensicherung und Wiederherstellung

Datensicherung und Wiederherstellung Dokumentation Datensicherung und Wiederherstellung Versionsverzeichnis Version: Datum: Revisionsgrund: Version 1.0 Januar 2011 Erste Ausgabe www.babe-informatik.ch 1/7 Datensicherung von Voraussetzung

Mehr

2 DAS BETRIEBSSYSTEM. 2.1 Wozu dient das Betriebssystem. 2.2 Die Bildschirmoberfläche (Desktop) Themen in diesem Kapitel: Das Betriebssystem

2 DAS BETRIEBSSYSTEM. 2.1 Wozu dient das Betriebssystem. 2.2 Die Bildschirmoberfläche (Desktop) Themen in diesem Kapitel: Das Betriebssystem 2 DAS BETRIEBSSYSTEM Themen in diesem Kapitel: Das Betriebssystem Die Windows-Oberfläche Elemente eines Fensters 2.1 Wozu dient das Betriebssystem Das Betriebssystem (engl.: operating system, kurz: OS)

Mehr

Jürgen Bayer. MDI-Anwendungen in C#

Jürgen Bayer. MDI-Anwendungen in C# Jürgen Bayer MDI-Anwendungen in C# Inhaltsverzeichnis 1 Grundlagen 2 1.1 Einrichten der Formulare 2 1.2 Öffnen von MDI-Childformularen 3 2 Menüs 4 2.1 Erstellen eines Menüs 4 2.2 Programmierung der Menüpunkte

Mehr

FastViewer Remote Edition 2.X

FastViewer Remote Edition 2.X FastViewer Remote Edition 2.X Mit der FastViewer Remote Edition ist es möglich beliebige Rechner, unabhängig vom Standort, fernzusteuern. Die Eingabe einer Sessionnummer entfällt. Dazu muß auf dem zu steuernden

Mehr

Objektorientierte Programmierung. Kapitel 12: Interfaces

Objektorientierte Programmierung. Kapitel 12: Interfaces 12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/

Mehr

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word Anleitung zum erstellen einer PDF-Datei aus Microsoft Word 1. Vorbereitung des PCs Um dem Tutorial folgen zu können müssen folgende Programme auf Ihrem PC installiert sein: Ghostskript 8.64: Ghostskript

Mehr

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Kapitel 2 SAP Easy Access

Kapitel 2 SAP Easy Access Kapitel 2 SAP Easy Access The way to get started is to quit talking and begin doing. Walt Disney Zusammenfassung Dieses Kapitel präsentiert das SAP Easy Access, wobei einige Aspekte aus der täglichen Arbeit

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Kleines Handbuch zur Fotogalerie der Pixel AG

Kleines Handbuch zur Fotogalerie der Pixel AG 1 1. Anmelden an der Galerie Um mit der Galerie arbeiten zu können muss man sich zuerst anmelden. Aufrufen der Galerie entweder über die Homepage (www.pixel-ag-bottwartal.de) oder über den direkten Link

Mehr

Hilfe zur Urlaubsplanung und Zeiterfassung

Hilfe zur Urlaubsplanung und Zeiterfassung Hilfe zur Urlaubsplanung und Zeiterfassung Urlaubs- und Arbeitsplanung: Mit der Urlaubs- und Arbeitsplanung kann jeder Mitarbeiter in Coffee seine Zeiten eintragen. Die Eintragung kann mit dem Status anfragen,

Mehr

TeamSpeak3 Einrichten

TeamSpeak3 Einrichten TeamSpeak3 Einrichten Version 1.0.3 24. April 2012 StreamPlus UG Es ist untersagt dieses Dokument ohne eine schriftliche Genehmigung der StreamPlus UG vollständig oder auszugsweise zu reproduzieren, vervielfältigen

Mehr

Installationsleitfaden kabelsafe backup home unter MS Windows

Installationsleitfaden kabelsafe backup home unter MS Windows Installationsleitfaden kabelsafe backup home unter MS Windows Installationsanleitung und Schnelleinstieg kabelsafe backup home (kabelnet-acb) unter MS Windows Als PDF herunterladen Diese Anleitung können

Mehr

Graphische Benutzungsoberflächen

Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen

Mehr

Version 0.3. Installation von MinGW und Eclipse CDT

Version 0.3. Installation von MinGW und Eclipse CDT Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 17: 3-Schichten-Architektur 2 Universität Osnabrück 1 3 - Objektorientierte Programmierung in Java Zur Erinnerung: Aufteilung der Schichten GUI Vorlesung 17: 3-Schichten-Architektur 2 Fachkonzept Fachkonzept - Datenhaltung Datenhaltung

Mehr