GUI- Entwicklung I: Windows Forms

Ähnliche Dokumente
GUI-Entwicklung 1: Windows Forms

GUI-Programmierung 1: Windows Forms


C# Programmierung. Eine Einführung in das.net Framework. C# Programmierung - Tag 5: Windows Forms

C# - Einführung in die Programmiersprache Windows Forms. Leibniz Universität IT Services Anja Aue

GUI-Entwicklung 2: Windows Presentation Foundation

XAML Extensible Application Markup Language. Manuel Naujoks (IB3)

Windows Presentation Foundation (WPF) -Grundlagen -Steuerelemente. Dr. Beatrice Amrhein

Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt WS 2006/2007

WPF Steuerelemente Listbox, ComboBox, ListView,

WPF Steuerelemente. Dr. Beatrice Amrhein

Programmieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr.

Programmieren lernen in ASP.NET mit C#

Grundlagen in Visual Studio MFC und.net

/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor();

Java für Bauingenieure

Windows Presentation Foundation

Objektorientierte Programmierung Studiengang Medieninformatik

<Trainingsinhalt> C# programmieren

Einführung in das Microsoft.NET-Framework. Programmiersprache C# MEF Das Managed Extensibility Framework. André Kunz

Windows Presentation Foundation (WPF) -Grundlagen -Steuerelemente. Dr. Beatrice Amrhein

Einführung: Grafische Benutzeroberflächen. Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester / 22

Graphische Benutzungsoberflächen

Inhaltsverzeichnis. Einführung... XIII. Kapitel 1: Erstellen einer Benutzeroberfläche... 1 III

Programmieren für Wirtschaftswissenschaftler SS 2015

Komponenten & Frameworks Seite 1

Programmieren in Java -Eingangstest-

Windows Presentation Foundation - WPF

Javakurs für Anfänger

EAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ

Implementieren von Klassen

Ein erstes "Hello world!" Programm

Entwicklungstand der GUI

Thema: Erstellen einer Windows Form Anwendung

Arbeitsblatt 5 EAD II NetBeans

Klausur GUI-Entwicklung WS10/11 1.Termin

BIF/SWE - Übungsbeispiel

NEU: Windows Forms-Anwendungen Projekt erstellen / Bereiche der IDE Eigenschaften Quelltext für Steuerelemente schreiben

WPF Bindung. Dr. Beatrice Amrhein

Microsoft 2010 Express/Beispiel für Grafische Oberflächen

Handbuch für die Erweiterbarkeit

Objektorientierte Programmierung Studiengang Medieninformatik

Grafische Benutzeroberflächen

Funktionale und Objekt-Orientierte Programmierkonzepte

Grafische Benutzeroberflächen

Programmieren? Das kann ich auch! Bau dir deine interaktive Bildergeschichte

Swing : Komponeneten I (Teil 1) Was ist Swing?

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Grafische Benutzeroberflächen

Rückgabewerte von Methoden

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 7. Grafische Benutzeroberflächen 1

Swing Lernen am Code Teil 1

Vorbemerkung 3. Aufbau des Buches 3. Teil 1 Einführung in C# 11

Windows Presentation Foundation

Windows Forms Projekte mit C++ in Visual Studio 2017

Projekt Xaml Konverter

Objektorientierung. Klassen und Objekte. Dr. Beatrice Amrhein

Projektarbeit Java. 4-Gewinnt. Berner Fachhochschule. 2004, Labor für Technische Informatik

Graphische Benutzungsoberflächen mit Java. Einführung in NetBeans

Windows Presentation Foundation

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

WPF und MVVM mit Visual Studio 2015/2017

Inhaltsverzeichnis. jetzt lerne ich

Cocktail-Rezepte-APP

ProMaSoft.de WordPDFFormular Version (1.083) Seite 1 von 7

Objekte. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 5. 1 Modulübersicht 3

Mit dem Etikettendruck haben Sie in Koha die Möglichkeit z. B. Signaturschilder und Barcodes auszudrucken.

JTable. W. Lang HWR Berlin, SS

C# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services

Leseprobe. Walter Doberenz, Thomas Gewinnus. Visual C# Grundlagen und Profiwissen ISBN:

Gui & Widgets. GUI & Widgets, Events GUI? Als GUI (= Graphical User Interface ) bezeichnet man die

Software Design Patterns Zusammensetzung. Daniel Gerber

Modernisierung von Forms durch neues Look&Feel

Nach der Installation kann es auch schon losgehen. Für unseren Port Scanner erstellen wir zunächst ein neues Projekt:

Visual Basic.NET mit Methode

ADF kompakt: Workshop zum Einstieg in ADF

WPF. Windows Presentation Foundation. Sven Hubert Student Partner Microsoft Academic Program

Transkript:

Technische Universität München GUI- Entwicklung I: Windows Forms Proseminar Objektorientiertes Programmieren mit.net und C# Institut für Informatik Software & Systems Engineering

Agenda Einführung in Windows Forms WinForms-Projekte im Visual Studio Beispielanwendung: Studentenverwaltung Steuerelemente Container und Layouts Ereignisse und EventHandler Dialoge und ihre Results Schluss: Zusammenfassung Zukunftssicherheit 2

Einführung GUI = Graphical User Interface Windows Forms: Einfache Gestaltung von Oberflächen für Windows Anwendungen Assembly: System.Windows.Forms.dll Mit.NET 1.0 eingeführt Seit.NET 3.0 neues GUI-Framework: Windows Presentation Foundation 3

Einführung: Visual Studio <Footer> 4

Einführung: Visual Studio Erleichterungen: Interne Code-Generierung u.a. Anordnung und Aussehen von Steuerelementen Erzeugung von Methoden und Deklarationen partial Klassen und Code-Trennung Form.cs (Anwendungscode) Form.Designer.cs (Designercode) Programmablauf Program.cs [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } #region Vom Windows Form Designer generierter Code static void InitializeComponent() { // Form1 this.name = Form1 ; this.text = Form1 ; this.clientsize = new System.Drawing.Size(500, 300);... } #endregion 5

Studentenverwaltung: Idee Implementieren Sie ein System, das das Verwalten von TUM Studenten und Ihren Attributen, sowie einem aktuellen Status, in einer Liste ermöglicht. Es soll möglich sein, diese Liste zu Speichern und zu Laden. * * Mögliche Aufgabenstellung in 95% aller Grundstudiums-Veranstaltungen 6

Steuerelemente TextBox [,.Name,.Text,.ReadOnly,.Enabled,.Multiline ] Label [,.Font,.ForeColor,.BackColor, ] DateTimePicker [,.Format,.Value : DateTime, ] NumericUpDown [,.Maximum,.Minimum,.DezimalPlaces,.Increment ] 7

Steuerelemente RadioButton / CheckBox [,.Checked,.Enabled ] PictureBox [,.Image, ] ListBox [,.Items : Collection,.Sorted, ] ProgressBar [,.Minimum,.Maximum,.Step, ] Methode:.PerformStep() Button [,.Visible,.Size,.Location, ] 8

Anchor Eigenschaft aller Controls: Abstände zu übergeordnetem Control verankern 9

Dock Eigenschaft aller Controls: An Grenzen des übergeordneten Elements andocken 10

Container Panels [,.BorderStyle, ], kein.text GroupBox [,.Text : Überschrift, ] SplitContainer [,.Panel1,.Panel2,.Orientation ] 11

Erweiterte Container: Layouts FlowLayoutPanel Ordnet Elemente in horizontaler oder vertikaler Flussrichtung [,.FlowDirection,.WrapContents,.Controls ] 12

Erweiterte Container: Layouts TableLayoutPanel Ordnet Elemente in einer Tabelle [,.SetCellPosition(),.GetControlFromPosition(),.RowCount,.ColumnCount,.GrowStyle ] Hinzufügen von Reihen/Spalten zur Laufzeit: Row/ColumnCount++ Beachte Je nach GrowStyle wächst Spalte/Zeile automatisch mit! 13

Ereignisse und EventHandler Windows Forms Anwendungen sind event-driven Erzeugen eines EventHandlers per IDE: Gewünschtes Steuerelement auswählen Im Eigenschaft-Fenster den Blitz anklicken ( Ereignisse ) Namen der neuen Methode in passende Zeile eingeben Methode wird erzeugt, Rumpf kann implementiert werden à erzeugter Code in Form1.Designer.cs this.addbutton.click += new System.EventHandler(this.addButton_Click); à erzeugter Code in Form1.cs private void addbutton_click(object sender, EventArgs e) { } 14

Dialoge und ihre Results Viele vorgefertigte Dialoge in der Toolbox: Drucken (mit Vorschau), Farbauswahl, Fontauswahl uvm. Für StudentenVerwaltungs- Tool wichtig: MessageBox.Show(+20 Überladungen) u.a. (Text, Überschrift, MessageBoxButtons, MessageBoxIcon, ) SaveFileDialog / OpenFileDialog.ShowDialog() [,.Filter,.InitialDirectory,.FileName, ] DialogResult: Rückgabewert für alle Show()/-Dialog() - Methoden [,.OK,.No,.Yes,.Cancel, ] 15

Dialoge und ihre Results: Beispiele MessageBox.Show("Hier steht der Text", "Überschrift", MessageBoxButtons.AbortRetryIgnore, MessageBoxIcon.Information, MessageBoxDefaultButton.Button3, MessageBoxOptions.RightAlign); 16

Dialoge und ihre Results: Beispiele OpenFileDialog ofd = new OpenFileDialog(); ofd.filter = "Textdokument *.txt XML- Dokument *.xml"; ofd.initialdirectory = "c:\\"; if (ofd.showdialog() == DialogResult.OK) { string dateipfad = ofd.filename; // Datei wird geöffnet... } 17

Die fertige Anwendung: StudentenVerwaltung 18

Zusammenfassung What You See Is What You Get Erleichterungen und Automatisierungen à Sehr einfach und intuitiv und somit schnelles Erstellen von grafischen Schnittstellen für Windows Anwendungen Für dieses Einsatzgebiet vollständig und relativ mächtig ABER: Keine Weiterentwicklungen von Microsoft-Seite Neue Art der GUI-Entwicklung durch WPF Im Vergleich mächtiger und dynamischer à Zukunft der professionellen GUI- Entwicklung liegt in der Hand von WPF 19

Fragen und Diskussion und gerne auch die Präsentation der fertigen Anwendung Vielen Dank für die Aufmerksamkeit! 20

Backup: Drawing Assembly: System.Drawing.dll [,.Graphics,.Color,.Font,.Point,.Size,.Image, ] Verwendung in vielen WinForms- Komponenten Zum zeichnen: Graphics mygraphics; mygraphics.draw[.] (Image, Arc, Rectangle, Line, Ellipse, String uvm.) Zum Drucken: System.Drawing.Printing [,.PrintDocument,.PrintRange,.PrintEventHandler (object sender, PrintEventArgs ev), ] 21

Backup: DataGridView zeigt Daten in einer dynamischen Tabelle an [,.Item (Int32, Int32),.DefaultCellStyle,.DataSource ] 22