Kapitel 1 Die Visual Basic .NETEntwicklungsumgebung Visual Basic .NET ist eine Programmiersprache. Die Programmierung in Visual Basic .NET erfordert nicht zwingend die Verwendung einer speziellen Programmierumgebung. Es ist durchaus möglich, mit einem normalen Text-Editor wie dem Notepad von Windows und dem Compiler der .NetUmgebung Programme zu erstellen. Empfehlenswert ist diese Vorgehensweise allerdings höchstenfalls für sehr kleine Konsolenanwendungen, also Programme ohne Oberfläche mit beschränktem Funktionsumfang. Für alle anderen Programme bietet Microsoft mit der Visual Studio-Entwicklungsumgebung ein hochintegriertes Werkzeug, um schnell und leicht Programme zu erstellen. Sie erhalten Visual Basic .NET immer als Komplettpaket, bestehend aus der Programmiersprache selbst, den notwendigen Werkzeugen, die Sie bei der Erstellung eigener Programme unterstützen, und einer Anzahl von Zusatzprogrammen, die oft benötigte Aufgaben stark vereinfachen. All dies ist bei Visual Basic in der Visual Studio-Entwicklungsumgebung zusammengefasst. In diesem Kapitel wird die Entwicklungsumgebung in aller Kürze vorgestellt. Die wichtigsten Oberflächenelemente und Werkzeuge werden benannt und gezeigt. Zudem wird besprochen, was ein Visual Basic-Projekt ist. Grundbegriffe der Programmierung Bevor wir in die Erläuterung der Visual Basic-Entwicklungsumgebung einsteigen, werden im Folgenden erst einige Grundbegriffe erläutert. Programmiersprache Das Schreiben von Programmen erfordert eine Programmiersprache. Beispiele heute üblicher Programmiersprachen sind unter anderem Delphi/Pascal, C/C++ oder Java. Grundbegriffe der Programmierung Sie bestehen aus einer Anzahl von Schlüsselwörtern, die später entweder in eine Maschinensprache übersetzt werden müssen oder durch ein anderes Programm, den so genannten Interpreter, zeilenweise abgearbeitet werden können. Interpretieren Die Programmiersprache, die von Visual Basic .NET verwendet wird, heißt Basic. Bis zur Version 6 von Visual Basic wurde eine Anwendung, die innerhalb der Entwicklungsumgebung getestet wurde, interpretiert. Debuggen Ein Vorteil dieser Methodik ist die einfache Weise, in der Fehler in einem Basic-Programm gesucht werden können. Der Interpreter lässt ein kontrolliertes zeilenweises Ablaufen des Programms zu. Dieser Vorgang wird als Debuggen bezeichnet. Man konnte das Programm (fast) jederzeit anhalten, Variablenwerte oder sogar Programmzeilen ändern und mit der geänderten Zeile weitermachen, und zwar ohne das Programm vorher zu übersetzen. Dies ist nur möglich, wenn das Programm zeilenweise abgearbeitet wird. Kompilieren Leider wurde dieses Verhalten bei Visual Basic .NET geändert. Hier werden jetzt auch innerhalb der Entwicklungsumgebung die Programme zuerst übersetzt und dann erst ausgeführt. Der Vorgang des Übersetzens wird als Kompilieren bezeichnet. Diese neue Methodik der Entwicklungsumgebung hat zur Folge, dass Sie Ihre Anwendung zwar nach wie vor zeilenweise ablaufen lassen können, im Haltemodus aber weder Variablenwerte noch Programmzeilen geändert werden können, da sich der Programm-Editor zu diesem Zeitpunkt in einem »Nur-lese-Zustand« befindet. Wie Sie sehen, genügt die Programmiersprache allein noch nicht, um eigene Programme zu schreiben. Es muss zumindest ein Übersetzer (Compiler) mitgeliefert werden. Dieser generiert aus den Programmzeilen den Zwischencode, der auf einer bestimmten Zielmaschine (Prozessor, Betriebssystem) ablauffähig ist. 40 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Programm-Editor Mit dem Übersetzer ist ein kompletter Entwicklungszyklus bereits möglich, jedoch müsste in diesem Fall für das Schreiben der Programmzeilen ein eigener Editor verwendet werden. Bei allen professionellen Produkten zur Programmierung wird allerdings ein zur Programmiersprache passender Programmeditor mitgeliefert. Dieser hilft bei der Eingabe von Programmcode durch Funktionen wie: 왘 왘 왘 왘 왘 왘 Farben für Schlüsselwörter Automatische Einrückungen Automatische Syntaxprüfung Eingabehilfen Integrierte Hilfe usw. Fensterdesign Programme werden heutzutage für Betriebssysteme geschrieben, die über eine grafische Oberfläche bedient werden. Daher ist zumeist auch ein Werkzeug notwendig, welches den Programmierer bei der Erstellung einer Oberfläche unterstützt. Ist die Programmierumgebung komfortabel, so ermöglicht dieses Werkzeug ein Design der Oberfläche durch Zusammenbauen derselben aus vorgefertigten Oberflächenelementen (in Visual Basic 4 .NET »Steuerelemente« genannt) wie Schaltflächen, Listen, TextBoxen usw. Der Anwender »zeichnet« die Oberfläche, ohne eine Zeile Programmcode zu schreiben. Die Umsetzung der gezeichneten Oberfläche in ein lauffähiges Oberflächenprogramm bleibt dem Compiler überlassen. Je umfangreicher die Programmiersprache, je mehr Funktionen mit der Programmiersprache abgebildet werden können, desto mehr Funktionen und Werkzeuge kann ein Hersteller mit seiner Programmiersprache liefern. IDE – Integrated Development Environment All diese Werkzeuge, all diese Funktionen können als die Entwicklungsumgebung angesehen werden. Einen besonderen Vorteil hat der Entwickler, 41 Bedienung und Oberfläche der Entwicklungsumgebung wenn er eine Programmierumgebung verwendet, die über eine so genannte IDE verfügt. IDE steht für Integrated Development Environment und bedeutet frei übersetzt so viel wie »Integrierte Entwicklungsumgebung«. Es handelt sich also hierbei um eine Entwicklungsumgebung, die innerhalb eines Programms alle Werkzeuge vereint, die für einen kompletten Entwicklungsprozess notwendig sind. Im Fall von Visual Basic .NET heißt diese Entwicklungsumgebung Visual Studio .NET. Bedienung und Oberfläche der Entwicklungsumgebung Wenn Sie Visual Studio.NET zum ersten Mal starten, sehen Sie das Fenster aus Bild 1.1. Sie werden sofort feststellen, dass ein intuitives Arbeiten mit dieser Oberfläche nicht ohne weiteres möglich ist oder zumindest eine gewisse Einarbeitungszeit benötigt. Wir wollen uns zunächst noch einmal vor Augen führen, wozu diese Oberfläche gedacht ist: Die Entwicklungsumgebung soll Ihnen auf einfachste Weise die Entwicklung von Programmen erlauben. Da die Programmierung im Zeitalter von Windows und Internet ein komplexes Thema ist, welches in der Entwicklungsumgebung seinen Niederschlag findet, sind zunächst einige Vorbemerkungen notwendig. Wenn Sie ein Programm für das Betriebssystem Windows schreiben, werden Sie meist nicht umhin kommen, eine Oberfläche, also ein Fenster, zu programmieren. Nur in wenigen Fällen kann darauf verzichtet werden, z.B. wenn Ihre Anwendung innerhalb eines Internetbrowsers ausgeführt werden soll. Dabei handelt es sich um Programme, die beim Aufruf ohne weitere Einstellungen oder Aktionen seitens des Anwenders eine Aufgabe komplett erfüllen und sich anschließend wieder beenden. Für diesen Fall muss zumindest ein Editor vorhanden sein, der die Eingabe von Programmzeilen erlaubt. 42 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Bild 1.1: Die Visual Basic .NET-Entwicklungsumgebung Visual Studio Zur Programmierung einer Oberfläche gehört es, die Oberfläche eines Fensters zu entwerfen. Aus diesen Grundanforderungen einer Entwicklungsumgebung leiten sich alle weiteren Funktionen derselben ab. Um Ihnen einen leichten Einstieg und einen kompletten Überblick zu verschaffen, sollen im Folgenden Kapitel zunächst die Elemente der Oberfläche im Einzelnen benannt und erläutert werden. Sie werden die Menüs von Visual Basic .NET, den Programm-Editor und zusätzliche Hilfsfenster kennen lernen. Anschließend wird anhand eines kleinen Programmierbeispiels die Anlage eines neuen Projekts, das Speichern desselben und das Öffnen eines bereits vorhandenen Projekts gezeigt. 43 Darstellung der Entwicklungsoberfläche Darstellung der Entwicklungsoberfläche Sie sollten für die Benutzung der Entwicklungsoberfläche einen entsprechend großen Monitor besitzen bzw. mit einer Auflösung von mindestens 800x600, besser noch 1024x768 arbeiten, sonst wird der Bereich, in welchem die verschiedenen Fenster dargestellt werden, zu klein. Verankerbare Fenster Die Entwicklungsumgebung arbeitet mit sog. verankerbaren Fenstern. Verankerbar ist jedes in der Entwicklungsumgebung verfügbare Hilfsfenster. Mit dieser Eigenschaft können Fenster miteinander verbunden und zu einem neuen Fenster kombiniert werden. Wenn Sie nun das Fenster mit der Maus verschieben, sehen Sie den Umriss des Fensters. Haben Sie einen Punkt erreicht, wo Sie das Fenster verankern können, so rastet der Umriss ein. Wenn Sie das Fenster dort loslassen, wird es mit den angrenzenden Hilfsfenstern verbunden. Hilfsfenster, die miteinander verbunden sind, können gemeinsam bewegt werden. So können Sie Ihre Entwicklungsumgebung besser ordnen und übersichtlich gestalten. Mögliche Ankerpunkte sind die weiteren Fenster der Entwicklungsumgebung, die Menüleiste sowie die seitlichen und unteren Ränder des Hauptfensters der Entwicklungsumgebung. Konfigurationsdialog Sie können das Aussehen des Startbildschirms von Visual Studio.NET über einen Konfigurationsdialog Ihren persönlichen Anforderungen und Vorlieben anpassen. Öffnen Sie den Konfigurationsdialog über das Menü EXTRAS>OPTIONEN (Bild 1.2). ToolTip Die Schaltflächen der Symbolleiste erhalten erst beim Kontakt mit dem Mauszeiger einen Rahmen. Dies ist Ihnen vielleicht vom Microsoft Internet Explorer her bekannt. 44 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Bild 1.2: Dialog Optionen Zu jedem Befehlsknopf in den Symbolleisten ist ein kurzer Infotext verfügbar, ToolTip genannt. Er erscheint, nachdem der Mauszeiger eine kurze Zeit über dem Symbol verweilt (Bild 1.3). Der ToolTip gibt Auskunft darüber, welche Funktion bzw. welchen Menüpunkt er ausführt. Bild 1.3: ToolTip Die wichtigsten Menüs Über die Menüs von Visual Basic .NET sind nahezu alle Funktionen der Entwicklungsumgebung ausführbar. Viele dieser Funktionen können zusätzlich zum Menü auch über Tastenkombinationen (Hotkeys) aufgerufen werden. 45 Die wichtigsten Menüs Die Verwendung der Tastenkombination ist immer schneller als der Aufruf des entsprechenden Menübefehls. Sie sollten sich die Hotkeys der am häufigsten verwendeten Funktionen merken und diese benutzen. Ist für einen Menübefehl ein Hotkey definiert, so erscheint dieser im Menü rechts neben dem Menütext (Bild 1.4). Im Folgenden werden die wichtigsten Menüs und deren Funktion beschrieben. Da es Visual Basic in verschiedenen Editionen gibt, die sich durch ihren Leistungsumfang unterscheiden, können sich die Abbildungen dieses Abschnitts von den tatsächlichen Menüs Ihrer installierten Visual Basic-Version unterscheiden. Menü Datei Das Menü DATEI (Bild 1.4) beinhaltet alle Funktionen, die benötigt werden, um ein Projekt oder einzelne Dateien des Projekts zu erstellen, zu laden oder zu speichern. Sie können in diesem Menü Ausdrucke starten und Visual Studio beenden. Darüber hinaus wird in diesem Menü eine Liste der zuletzt geöffneten Projekte geführt, die dazu verwendet werden kann, diese Projekte zu laden, ohne dafür einen entsprechenden Dialog öffnen zu müssen. Bild 1.4: Das Menü Datei 46 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Projekt anlegen Um ein neues Projekt anzulegen, verwenden Sie das Menü DATEI->NEU-> PROJEKT. Dies öffnet einen Dialog, in welchem Sie den Zieltyp des neuen Projekts auswählen können (Bild 1.5). Bild 1.5: Dialog Neues Projekt Wählen Sie nun z.B. den Projekttyp Windows-Anwendung, so erzeugt Visual Studio das Grundgerüst für ein Windows-Programm. Dabei wird bereits automatisch ein Formular hinzugefügt. Projektmappe Beim Anlegen eines neuen Projekts erstellt Visual Studio sowohl eine Projektdatei mit der Endung .vbproj als auch eine so genannte Projektmappe mit der Dateiendung .sln. Sie können jedes neue Projekt in einer eigenen Projektmappe speichern oder mehrere Projekte in einer Projektmappe zusammenfassen. Letzteres ist z.B. dann sinnvoll, wen Sie ein Steuerelement erstellen möchten. Sie können dann das Projekt für das Steuerelement und ein Projekt für ein Testprogramm in einer Projektmappe zusammenfassen und so die beiden Projekte immer gemeinsam öffnen. 47 Die wichtigsten Menüs Gehen Sie dazu wie folgt vor: Erstellen Sie zunächst das Projekt für das Steuerelement, indem Sie den Menüpunkt DATEI->NEU->PROJEKT anwählen und als Projekt den Typ Windows-Steuerelementbibliothek auswählen. Falls Sie die vorgegebenen Namen beibehalten, wird von Visual Studio eine Projektmappe namens »WindowsControlLibrary1« erstellt, in der sich das Projekt WindowsControlLibrary1 befindet. Anschließend wählen Sie den Menüpunkt DATEI->PROJEKT HINZUFÜGEN->NEUES PROJEKT... und als Projekttyp Windows-Anwendung. Visual Studio erzeugt daraufhin ein Projekt namens WindowsApplication1 und fügt es der bereits geöffneten Projektmappe hinzu. Bild 1.6 zeigt die Ansicht der so erstellten Projektmappe im Projektmappen-Explorer. Bild 1.6: Projektmappe im Projektmappen-Explorer Im Kontextmenü des Projektmappen-Explorers können Sie nun eines der Projekte zum Startprojekt machen. Dies ist dann das Projekt, welches ausgeführt wird, wenn Sie die Taste (F5) drücken, um ein Programm zu starten. Eine solchermaßen erstellte Projektmappe öffnen Sie über den Menüpunkt DATEI->PROJEKTMAPPE ÖFFNEN. Menü Bearbeiten Das Menü BEARBEITEN (Bild 1.7) bietet neben den zum Standard gewordenen Punkten wie RÜCKGÄNGIG, KOPIEREN, AUSSCHNEIDEN, EINFÜGEN, SUCHEN UND ERSETZEN etc. einige neue und hilfreiche Funktionen. 48 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Diese betreffen vor allem den Editor und dienen der Fehlerminimierung bei der Eingabe von Code. Eine nähere Beschreibung dieser Hilfsmittel finden Sie im Abschnitt über den Editor. Bild 1.7: Menü Bearbeiten Menü Ansicht Das Menü ANSICHT (Bild 1.8) enthält Menübefehle, welche die Darstellung und Anzeige der Fenster der Entwicklungsumgebung regeln. Es stehen Menübefehle zum Öffnen des Codefensters oder der Objektansicht sowie zum Ein- und Ausblenden der verschiedenen Hilfsfenster zur Verfügung. Projektmappen-Explorer Eines dieser Hilfsfenster ist der Projektmappen-Explorer. Mit seiner Hilfe können Sie sich die Struktur Ihres Projekts wie im Windows Explorer anzeigen lassen und mittels eines Kontextmenüs auch bearbeiten. Symbolleisten anpassen Schließlich befindet sich im Menüpunkt ANSICHT auch der Menübefehl SYMBOLLEISTEN. Hierüber können Sie die einzelnen Symbolleisten einbzw. ausblenden. Sie sind auch in der Lage, über den Unterpunkt ANPASSEN 49 Die wichtigsten Menüs das Aussehen der Symbolleisten Ihrem persönlichen Geschmack anzupassen. Sehen Sie hierzu bitte die Beschreibung der Symbolleisten weiter hinten im Text. Bild 1.8: Menü Ansicht Bild 1.9: Menü Projekt 50 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Menü Projekt Das Menü PROJEKT (Bild 1.9) dient zur Manipulation der Projekte. Hier können Sie neue oder bereits bestehende Komponenten wie Formulare, Module, Klassen etc. den offenen Projekten hinzufügen oder daraus entfernen. Bild 1.10: Neues Modul hinzufügen Module hinzufügen Wenn Sie beispielsweise ein neues Modul hinzufügen möchten, wählen Sie den Menüpunkt PROJEKT->NEUES ELEMENT HINZUFÜGEN (Bild 1.10) und anschließend die Vorlage für ein Modul aus. Möchten Sie dagegen ein bereits vorhandenes Modul übernehmen, so gehen Sie über den Menüpunkt PROJEKT->VORHANDENES ELEMENT HINZUFÜGEN und wählen im dann erscheinenden Dialog die Datei aus, die Sie dem Projekt hinzufügen möchten (Bild 1.11). 51 Die wichtigsten Menüs Bild 1.11: Bestehendes Element hinzufügen Verweise Mit dem Menübefehl VERWEIS HINZUFÜGEN... (Bild 1.12) können Sie Bibliotheken und Projekte auswählen, deren Funktionen und Objekte Sie in Ihrem Projekt verwenden wollen. Bild 1.12: Verweis hinzufügen 52 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Es wird dann ein Verweis auf die Objektbibliothek dieser Anwendung angelegt. Nach Auswahl eines Eintrags aus dieser Liste stehen Ihnen alle Funktionen und Objekte der Bibliothek oder Anwendung in Ihrem aktuellen Projekt zur Verfügung. Menü Erstellen Mit Hilfe des Menüs ERSTELLEN (Bild 1.13) können Sie ein einzelnes Projekt oder alle Projekte einer Projektmappe erstellen, d.h. übersetzen lassen. Bild 1.13: Menü Erstellen Bild 1.14: Ausgaben beim Erstellen einer Projektmappe 53 Die wichtigsten Menüs Wählen Sie z.B. den Menüpunkt ERSTELLEN->PROJEKTMAPPE NEU so werden alle Projekte der aktuellen Projektmappe komplett neu übersetzt. Den Ablauf der Übersetzung können Sie dabei in einem sich zusätzlich öffnenden Ausgabefenster verfolgen (Bild 1.14). ERSTELLEN, Außerdem können Sie die aktuelle Projektmappe in einem gewissen Umfang konfigurieren (Bild 1.15). Bild 1.15: Konfiguration einer Projektmappe Menü Debuggen Das Menü DEBUGGEN (Bild 1.16) dient dem Überwachen und Testen einer Anwendung. Es beinhaltet verschiedene Menüpunkte zur Prozessablaufsteuerung, die in der Regel erst wirksam werden, wenn der Programmablauf unterbrochen wird. Bild 1.16: Menü Debuggen 54 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Programmausführung anhalten Dies geschieht automatisch bei einem Fehler, bei der Anweisung Stop im Code, bei einem Haltepunkt (Bild 1.18) oder durch den Menübefehl DEBUGGEN->UNTERBRECHEN. Es ist dann möglich, jede Anweisung im Code einzeln auszuführen und das Ergebnis zu analysieren. Sehr hilfreich sind hier die Fenster Auto, Lokal und Überwachen (Bild 1.17). Bild 1.17: Fenster Auto, Lokal und Überwachen Das Fenster Lokal Im Fenster Lokal werden unter anderem alle Variablen der aktuellen Prozedur mit ihren Werten angezeigt. Es wird nur dann aktualisiert, wenn der Programmablauf unterbrochen wurde. 55 Die wichtigsten Menüs Das Fenster Überwachen Gleiches gilt für das Fenster Überwachen. Im Gegensatz zum Fenster Lokal werden hier allerdings nur die Variablen angezeigt, die explizit von Ihnen zur Überwachung ausgewählt wurden. Das Befehlsfenster Das Befehlsfenster schließlich erlaubt Ihnen die Eingabe von Programmanweisungen und deren Ausführung durch Betätigen der Taste (ENTER). Setzen eines Haltepunktes Bei allen Debug-Aktivitäten muss der Programmablauf unterbrochen werden. Am einfachsten erreicht man dies, indem man einen Haltepunkt setzt. Zu diesem Zweck wird im Codefenster die Einfügemarke auf die gewünschte Zeile gesetzt. Anschließend wird mit der Taste (F9) oder über das Menü DEBUGGEN->NEUER HALTEPUNKT der Haltepunkt gesetzt. Auch durch das Anklicken der Kennzeichenleiste, die sich als grauer Streifen auf der linken Seite des Codefensters befindet, kann ein Haltepunkt aktiviert bzw. deaktiviert werden. Bild 1.18 zeigt einen Haltepunkt. Wie Sie sehen, wird er durch einen roten Punkt auf der Kennzeichenleiste sichtbar gemacht. Bild 1.18: Programmablauf wurde durch einen Haltepunkt gestoppt. 56 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Der Programmlauf lässt sich jederzeit über das Menü DEBUGGEN->WEITER wieder aufnehmen. Schnellüberwachung Ist der Programmlauf unterbrochen, können die aktuellen Werte der Programmvariablen über das Lokalfenster ermittelt werden. Oder Sie können sich, wie in Bild 1.19 gezeigt wird, eine Variable über das Menü DEBUGGEN>SCHNELLÜBERWACHUNG direkt anzeigen lassen. Diese Funktion kann auch durch die Tastenkombination (ª)+(F9) ausgeführt werden. Hinweis Wie Sie in Bild 1.19 sehen, hat die Variable den Wert 0, obwohl der Debugger auf der Programmanweisung x = 5 steht. Dies liegt darin begründet, dass ein Haltepunkt die Programmausführung stoppt, bevor er die aktuelle Zeile ausführt. Bild 1.19: Wert einer Variablen an einem Haltepunkt 57 Die wichtigsten Menüs Menü Format Mit dem Menü FORMAT (Bild 1.20) erreichen Sie eine ganze Reihe von Befehlen, die es Ihnen erlauben, die Anordnung von Steuerelementen zu verändern und sie auszurichten. Dies bezieht sich vor allem auf Gruppen von Steuerelementen. Ein einzelnes Steuerelement lässt sich mit den Menübefehlen lediglich am Raster ausrichten. Bild 1.20: Menü Format Zum Bilden einer formatierbaren Gruppe markieren Sie die zu formatierenden Steuerelemente. Ziehen Sie bei gedrückter linker Maustaste über diese Elemente. Hierbei wird ein dünner Rahmen mitgezogen. Alle Elemente, die diesen Rahmen berühren, werden beim Loslassen der Taste zu einer Gruppe zusammengefasst und können dann gemeinsam formatiert werden. Sie können einzelne Elemente durch (Strg) und Mausklick in eine Gruppierung aufnehmen oder daraus entfernen. Nun sind die Formatierbefehle aktiv und Sie können die Steuerelemente ausrichten. Gruppenschablone Als Schablone für die anderen Elemente der Gruppe dient immer das zuletzt mit (Strg) hinzugefügte Steuerelement oder, beim Ziehen mit der Maus, das zuletzt dem Formular hinzugefügte Steuerelement. Sie erkennen dieses Steuerelement am dunklen Markierungsrahmen (Bild 1.21). An dessen Werten für Size.Width, Size.Height, Location.Top, Location.Left orientiert sich dann eine Ausrichtung über den Menübefehl AUSRICHTEN. 58 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Bild 1.21: Ausrichten von Steuerelementen Bild 1.22: Ausrichten von Steuerelementen über das Menü Format 59 Die wichtigsten Menüs Bild 1.22 zeigt die oben genannte Funktionsweise. Die Schaltfläche Button1 aus Bild 1.21 diente für die Ausrichtung über das Menü FORMAT->AUSRICHTEN->LINKS als Schablone. Wie Sie sehen, wurde die Ausrichtung der Schaltflächen Button2 und Button3 an diese angeglichen. Menü Extras Das Menü EXTRAS beinhaltet unter anderem den wichtigen Menüpunkt OPTIONEN. Dieser Menübefehl öffnet den Dialog Optionen, über welchen globale Einstellungen der Entwicklungsumgebung vorgenommen werden können. Menü Extras->Optionen Mittels einer Baumstruktur im Stile des Windows Explorer stehen Ihnen die Optionen nach Themen geordnet zur Verfügung. Im Folgenden sollen Ihnen einige der einstellbaren Optionen für die Entwicklungsumgebung und den Text-Editor vorgestellt werden. Bild 1.23 zeigt die allgemeinen Optionen, mit denen Sie das Aussehen und Verhalten der Entwicklungsumgebung beeinflussen können. Bild 1.23: Allgemeine Umgebungsoptionen 60 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Über die Option Beim Start kann z.B. angegeben werden, ob die Entwicklungsumgebung beim Start die zuletzt bearbeitete Projektmappe lädt, eine leere Umgebung anzeigt, die Startseite anzeigt oder ob eine der Dialogboxen zum Öffnen eines Projekts oder zum Anlegen eines neuen Projekts angezeigt werden soll. Über die Option Statusleiste anzeigen können Sie die Statusleiste am unteren Rand der Entwicklungsumgebung darstellen. Die Statusleiste zeigt unter anderem den Fortschritt laufender Vorgänge sowie die Zeilen- und Spaltennummern des Cursors in einem Editor-Fenster an. Wenn Sie Umgebungstools animieren anwählen, so werden Fenster, die von der Umgebung automatisch geladen werden, mit Übergangseffekten eingeblendet und nicht unmittelbar auf dem Bildschirm angezeigt. Sehr hilfreich ist die Option Automatische Vervollständigung des Befehlsfensters aktivieren. Damit werden bei der Eingabe von Befehlen oder Dateipfaden Vorschläge zur Vervollständigung der laufenden Eingabe angezeigt. Dabei wird mit jedem eingegebenen Zeichen die Liste auf die Befehle oder Pfade beschränkt, die alle bereits eingegeben Zeichen enthalten. Sobald Sie den gewünschten Befehl oder Pfad in der eingeblendeten Liste sehen, können Sie ihn mit der Maus oder den Pfeiltasten übernehmen. Dieses Verfahren kann Ihnen also eine Menge Schreibarbeit abnehmen. Im Eingabefeld Elemente im Fenstermenü anzeigen können Sie angeben, wie viele der momentan geöffneten Fenster in der Fensterliste des Hauptmenüs FENSTER angezeigt werden sollen. Dabei sind Werte zwischen 1 und 24 möglich, der Standardwert ist 10. Ähnlich verhält es sich mit der Option Elemente in zuletzt geöffneter Liste. Hier können Sie die Anzahl der zuletzt geöffneten Projekte und Dateien angeben, die im Hauptmenü DATEI angezeigt werden sollen. Der Standardwert beträgt 4; möglich sind auch hier Werte zwischen 1 und 24. Einige weitere wichtige Optionen betreffen die von Ihnen erzeugten Projekte und Projektmappen. Gehen Sie dazu im Optionen-Dialog unter Umgebung auf das Thema Projekte und Projektmappen (Bild 1.24). Zunächst sollten Sie dort den Speicherort Ihrer Projekte festlegen, damit Sie sich nicht bei jedem Speichern durch die einzelnen Laufwerke und Verzeichnisse klicken müssen. 61 Die wichtigsten Menüs Bild 1.24: Umgebungsoptionen für Projekt und Projektmappen Zusätzlich können Sie hier noch angeben, ob beim Beginn der Übersetzung eines Projekts, dem so genannten Build, ein Ausgabefenster geöffnet werden soll, in welchem Ihnen Informationen zum Ablauf der Erstellung angezeigt werden. Sinnvollerweise ist diese Option standardmäßig aktiviert. Ebenfalls standardmäßig aktiviert ist die Option Aufgabenlistenfenster bei Buildfertigstellung mit Fehlern anzeigen. Dadurch öffnet sich für den Fall, dass Ihr Projekt nicht fehlerfrei erzeugt werden konnte, ein weiteres Fenster, in dem Sie die aufgetretenen Fehler aufgelistet sehen. Da die Behebung eines Fehlers von Visual Studio als Aufgabe bezeichnet wird, nennt sich das Fenster Aufgabenlistenfenster. Als Nächstes sollten Sie festlegen, wie sich die Entwicklungsumgebung verhalten soll, wenn Sie eine Änderung an einem Dokument bzw. an einem Programmteil beim Starten der Übersetzung des Projekts noch nicht gespeichert haben. Dabei stehen Ihnen drei Möglichkeiten zur Verfügung: Sie können die Änderungen an geöffneten Dokumenten speichern lassen, Visual Studio kann Sie zum Speichern von Änderungen an geöffneten Dokumenten auffordern oder Sie können sich entscheiden, Änderungen an geöffneten Dokumenten nicht zu speichern. 62 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Um Ihnen das Arbeiten mit der Entwicklungsumgebung so angenehm wie möglich zu machen und Ihren Bedürfnissen oder Gewohnheiten anzupassen, sollten Sie sich auch das Thema Text-Editor im Optionen-Dialog anschauen. Hauptsächlich sind dort die Unterthemen Allgemein und, für Sie als Visual Basic-Programmierer, Basic von Interesse. Bild 1.25: Allgemeine Optionen des Text-Editors Bild 1.25 zeigt die allgemeinen Optionen, die für den Text-Editor eingestellt werden können. Wenn Sie die Option Textbearbeitung mit Drag_Drop aktiviert haben, können Sie wie in einem Textverarbeitungsprogramm einen markierten Block per Drag & Drop verschieben. Normalerweise werden Befehle, durch die lediglich der Cursor innerhalb des Textes verschoben wird, nicht in die Rückgängig-Liste aufgenommen. Durch Anwählen der Option Bewegungen der Einfügemarke als Teil der Rückgängig-Liste können Sie dieses Verhalten ändern. Die RückgängigListe finden Sie unter dem Hauptmenü BEARBEITEN. Die Anzeige der Editor-Fenster können Sie mit vier weiteren Optionen beeinflussen. Auswahlrand zeigt einen vertikalen Rand auf der linken Seite des Textbereichs des Editor-Fensters an. Sie können dann auf diesen Rand klicken, um eine gesamte Textzeile zu markieren. 63 Die wichtigsten Menüs Indikatorrand zeigt ebenfalls einen Rand auf der linken Seite des Text-Editors an, diesmal aber außerhalb des Textbereichs. Auf diesem Rand werden unter anderem Verknüpfungen zu Haltepunkten und zur Aufgabenliste angezeigt. Durch Anklicken der Optionen Vertikale Bildlaufleiste und Horizontale Bildlaufleiste können Sie Bildlaufleisten einblenden, durch die Sie sich Elemente außerhalb des Ansichtsbereichs des Editors anzeigen lassen können. Sind die Bildlaufleisten nicht eingeblendet, so müssen Sie über die Pfeiltasten oder (BILD½)- und (BILD¼)-Tasten einen Bildlauf ausführen. Bild 1.26 zeigt Ihnen die allgemeinen Optionen des Text-Editors, wenn Sie mit der Programmiersprache Visual Basic arbeiten. Bild 1.26: Allgemeine Optionen des Text-Editors für Basic Wenn Sie die Option Members automatisch auflisten angewählt haben, so wird bei der Eingabe einer Codezeile an der entsprechenden Position eine Liste der verfügbaren Members (Variable, Eigenschaften und Methoden) eines Objekts oder einer Klasse angezeigt. Bild 1.27 zeigt dieses Verhalten des Text-Editors an Hand des Debug-Objekts. 64 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Bild 1.27: Auswirkung der Option Members automatisch auflisten Über die Option Erweiterte Members ausblenden können Sie bestimmte Members, die intern als »erweitert« markiert sind, ausblenden und damit die Liste eventuell übersichtlicher gestalten. Wohl kein Entwickler kann sich alle Übergabeparameter der von ihm geschriebenen Funktionen oder Prozeduren merken, geschweige denn die der eingebauten Visual Basic-Funktionen. Damit Sie beim Aufruf einer Funktion nicht erst nach den Parametern und deren Typ suchen müssen, können Sie die Option Parameterinformationen auswählen. Dann werden gegebenenfalls verfügbare Informationen zu den Übergabeparametern automatisch angezeigt. Das folgende Bild verdeutlicht dies an Hand der Methode Write des Debug-Objekts. Wählen Sie die Option Virtuellen Bereich aktivieren aus, so kann der Cursor über das physische Ende einer Textzeile hinaus bewegt werden. Wenn Sie dann mit der Eingabe beginnen, wird der Bereich zwischen dem bisher letzten Wort der Zeile und der aktuellen Position automatisch mit Leerzeichen gefüllt. Wenn die Option nicht aktiviert ist, so können Sie den Cursor nicht über das Zeilenende hinaus bewegen. 65 Die wichtigsten Menüs Bild 1.28: Auswirkung der Option Parameterinformationen Ein Aktivieren der Option Zeilenumbruch bewirkt, dass Zeilen, die über den sichtbaren Bereich des Editors hinausgehen, automatisch in die nächste Zeile umbrochen werden. Dies dient sicher nicht der Übersichtlichkeit, ist aber natürlich reine Geschmackssache. Bild 1.29: Optionen für Tabstopps Bild 1.29 zeigt die verfügbaren Optionen für Tabstopps für die Programmiersprache Basic. Wenn Sie unter Einzug die Option Keiner aktivieren, so wird der Cursor beim Drücken der Eingabetaste immer in die erste Spalte der nächsten Zeile platziert. 66 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Wählen Sie Block aus, so wird die nächste Zeile automatisch bis zum selben Tabstopp der vorherigen Zeile eingezogen. Intelligent sorgt dafür, dass neue Textzeilen nach den Regeln formatiert werden, die für die Sprache Basic festgelegt wurden. Geben Sie also z.B. eine For-Schleife ein, so wird die nächste Zeile um einen Tabstopp eingerückt. Im Textfeld Tabulatorgröße können Sie angeben, wie viele Leerzeichen durch ein Tabulatorzeichen dargestellt werden. Dagegen gibt Einzugsgröße an, wie viele Leerzeichen bei einem Einzugsvorgang durch die (ÿ__)-Taste eingefügt werden. Wenn Sie die Option Leerzeichen einfügen auswählen, werden bei Einzugsvorgängen Leerzeichen statt Tabulatorzeichen eingefügt. Im Gegensatz dazu wird bei Anwahl von Tabulatoren beibehalten versucht, nach Möglichkeit Tabulatorzeichen statt Leerzeichen zu verwenden. Zu guter Letzt sollen noch einige VB-spezifische Optionen kurz erläutert werden. Wählen Sie dazu das Thema Text-Editor->Basic->VB-Spezifisch an (Bild 1.30). Bild 1.30: VB-spezifische Optionen des Text-Editors Um sich Schreibarbeit zu ersparen, wählen Sie die Option End-Konstruktionen automatisch einfügen an. Geben Sie im Text-Editor z.B. eine Proze- 67 Symbolleisten durdeklaration ein, Sub TestProc, und drücken Sie die Eingabetaste, so wird automatisch eine entsprechende End Sub-Anweisung generiert. Ähnliches gilt für Schleifenkonstrukte wie eine For-Schleife, für die bei Betätigen der Eingabetaste eine Next-Anweisung eingefügt wird. Der Übersichtlichkeit des Quellcodes dient die Option Dateien in Gliederungsansicht öffnen. Sie bietet die Möglichkeit, Programmteile zu verbergen, indem Sie auf das Minuszeichen vor einer Prozedur-deklaration klicken. Damit bleibt lediglich die Deklaration sichtbar, der eigentliche Code der Prozedur wird dagegen ausgeblendet. Wie Sie in dem nächsten Bild erkennen, ist lediglich der Code der Prozedur Form1_Load sichtbar, der Code der Button<x>_Click-Prozeduren dagegen nicht. Bild 1.31: Dateien in Gliederungsansicht Symbolleisten Die Symbolleisten stellen ein Mittelding zwischen Menübefehlen und Tastaturkürzeln dar. Sie ermöglichen Ihnen, einen Menübefehl mit einem Mausklick auf ein Symbol auszuführen. Diese Symbole sind nach Themenbereichen geordnet in sog. Leisten untergebracht und befinden sich unterhalb der Menüleiste. 68 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Symbolleisten als eigenständige Fenster Jede Symbolleiste ist einzeln verschiebbar. Man bedient sich dabei eines in der linken Seite einer jeden Symbolleiste angebrachten senkrechten Balkens, der wiederum aus mehreren kleinen waagerechten Balken besteht. Damit kann man die Leisten mit der Maus umpositionieren. Wenn Sie eine Leiste außerhalb des Bereichs ziehen, in der sie liegen kann, wird sie zu einem eigenständigen Fenster. So kann man die Leisten auch als Fenster beliebig über den Bildschirm verteilen. Menü Extras->Anpassen Sie haben auch die Möglichkeit, den Inhalt der Symbolleisten anzupassen oder gar eigene Symbolleisten zu entwerfen. Hierzu dient der Menübefehl EXTRAS-> ANPASSEN... Bild 1.32: Menü Extras->Anpassen Er öffnet ein Fenster, wie in Bild 1.32 sichtbar, mit dessen Hilfe beliebig einzelne Schaltflächen entfernt, neue hinzugefügt oder vorhandene umgruppiert werden können. 69 Symbolleisten Symbol entfernen Zum Entfernen eines Symbols aus einer Symbolleiste ziehen Sie es einfach auf den geöffneten Dialog Anpassen oder klicken mit der rechten Maustaste auf das Symbol. Daraufhin erreicht man ein Kontextmenü, das weitere Manipulationsmöglichkeiten zu den Symbolen eröffnet. Neben dem Löschen wird Ihnen hier eine Auswahl von Funktionen zum Bearbeiten der Symbole angeboten. So können Sie sogar dem Symbol ein neues Bild zuweisen oder das bestehende bearbeiten. Symbol verschieben Wenn Sie eine Symbolschaltfläche in eine andere Symbolleiste verschieben möchten, so ziehen Sie diese einfach mit der Maus dorthin. Über einer für das Einfügen geeigneten Stelle erscheint dann eine senkrechte Einfügemarke. Hinweis Bei Loslassen des Symbols wird es dort eingefügt und ist nun neuer Bestandteil dieser Symbolleiste. Es sind nicht alle verfügbaren Befehle in die vorhandenen Symbolleisten eingebaut, jedoch können Sie die fehlenden Befehle selbst in einer Symbolleiste platzieren. Beachten Sie bitte, dass all diese Funktionen nur ausgeführt werden können, während der Dialog Anpassen aktiv ist. Der Dialog Anpassen gibt Ihnen des Weiteren die Möglichkeit, neue Symbolleisten zu erzeugen. Die Registerkarte Symbolleisten bietet einen Überblick über die bereits vorhandene Leisten. Mit der Schaltfläche Neu können Sie Ihre eigene Leiste erzeugen. Zunächst wird ein leeres Fenster in der Entwicklungsoberfläche geöffnet. Um es als Symbolleiste zu den anderen zu platzieren, ziehen Sie es mit der Maus dorthin. Nun können mit der Registerkarte Befehle (Bild 1.33) die gewünschten Befehle in die neue Menüleiste gezogen werden. In dieser Registerkarte finden Sie alle verfügbaren Menübefehle von Visual Basic, und zwar nach Rubriken geordnet. 70 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Bild 1.33: Dialog Anpassen, Registerkarte Befehle Aber auch ein Verschieben von Menübefehlen ist innerhalb des Dialogs Anpassen möglich. Während der Dialog Anpassen geöffnet ist, kann man zwar weiter auf Menübefehle zugreifen, jedoch führt eine Auswahl eines Menübefehls nicht zu seiner Ausführung. Vielmehr kann der Menübefehl mit der Maus an eine beliebige andere Stelle gezogen werden. Menübefehle in Symbolleisten verschieben Man kann den jeweiligen Befehl auch in die Symbolleisten ziehen. Hierbei lassen sich sogar ganze Menügruppen wie etwa DATEI verschieben. Wenn man das ganze schließlich mit gedrückter Taste (Strg) durchführt, wird der Menübefehl oder die Menügruppe nicht verschoben, sondern kopiert. Sie haben somit alle Möglichkeiten, sich Ihre eigene Entwicklungsumgebung zu erstellen. Dies ist ein wichtiger Punkt, wenn man bereits mit einer anderen Entwicklungsumgebung gearbeitet hat und jetzt umsteigt. Sie können dann nämlich die neue Entwicklungsumgebung an Ihre gewohnte anpassen. 71 Add-Ins Add-Ins Add-In-Manager Add-Ins sind ganz allgemein Werkzeuge, welche die Entwicklungsumgebung erweitern. Verwalten können Sie Add-Ins über den Add-In-Manager, den Sie über das Menü EXTRAS->ADD-IN-MANAGER aufrufen. Bild 1.34: Der Add-In-Manager Es handelt sich bei Add-Ins um eigenständige Programme, die sich mittels des so genannten Automatisierungsmodells in die IDE von Visual Basic einbauen lassen. Dabei ist es gleichgültig, ob das Add-In mit Visual Basic oder etwa Visual C++ erstellt wurde. Ein Add-In greift auf interne Routinen der Entwicklungsumgebung zu und erlaubt so eine Anpassung oder Änderung der IDE. Es können aber auch ganze Prozessabläufe automatisiert werden, die Sie sonst mühevoll manuell durchführen müssten. Hiermit lässt sich viel Zeit sparen, gerade im Hinblick auf eine spätere Fehlersuche im manuell erstellten Code. Es gibt zwei Arten von Add-Ins: 왘 왘 72 Add-Ins Assistenten Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Add-Ins Ein Add-In ist die allgemeine Bezeichnung für ein Programm, das seine Aufgaben innerhalb der IDE hat. Dabei kann es sogar sein, dass Sie als Benutzer gar nichts von der Aktivität eines Add-Ins erfahren, weil es im Hintergrund agiert. Assistenten Assistenten hingegen sind eine spezielle Ausprägung von Add-Ins. Sie leiten den Benutzer schrittweise durch einen Prozess, dessen Umfang oder Komplexität eine manuelle Bearbeitung verbietet. Sie können in Visual Basic selbst Assistenten erstellen. Das Eigenschaftenfenster Im Eigenschaftenfenster (Bild 1.35) werden während der Programmentwicklung die Eigenschaften von Objekten (Formulare, Klassen, Steuerelemente) angezeigt und können dort auch verändert werden. Das Eigenschaftenfenster zeigt immer die Eigenschaften der aktuell markierten Objekte an. Bild 1.35: Die Eigenschaften der Schaltfläche Button1 im Eigenschaftenfenster 73 Das Eigenschaftenfenster Massenänderungen von Eigenschaften Ist mehr als ein Objekt markiert, so werden die gemeinsamen Eigenschaften der Objekte angezeigt. Auf diese Art können sog. Massenänderungen von Eigenschaften mehrerer Objekte durchgeführt werden. Wenn Sie z.B. allen Steuerelementen eine andere Schriftart zuweisen möchten, markieren Sie alle Steuerelemente und ändern dann die Eigenschaft Font der Objekte im Eigenschaftenfenster. Falls das Eigenschaftenfenster nicht sichtbar ist, kann es über das Menü ANSICHT->EIGENSCHAFTENFENSTER, über die Taste (F4) oder über die Symbolleiste aktiviert werden. Das Eigenschaftenfenster besteht aus den Teilen Objekt-Listbox und der Eigenschaften-Liste. Objekt-Listbox In der Objekt-Listbox, die sich direkt unterhalb des Fenstertitels befindet, sind alle Objekte des aktuell aktiven Moduls eingetragen. Bild 1.36: Eigenschaften nach Kategorien 74 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Falls nur ein Objekt markiert ist, wird der Name des markierten Objekts in der TextBox angezeigt. Mit der Drop-down-Liste kann, ohne das Eigenschaftenfenster zu verlassen, auf jedes andere Objekt des aktiven Moduls gewechselt werden. Eigenschaftenliste Die Eigenschaftenliste ist eine Tabelle mit zwei Spalten. Die linke Spalte enthält die Eigenschaften des markierten Objekts, die rechte Spalte die aktuellen Werte dieser Eigenschaften. Über die Registerkarten der Liste können die Eigenschaften alphabetisch oder, wie in Bild 1.36 sichtbar, nach Kategorien geordnet angezeigt werden. Vordefinierte Eigenschaftswerte Hat eine Eigenschaft vordefinierte Werte, so erscheint in der rechten Spalte dieser Eigenschaft ein Drop-down-Pfeil. Wird er gedrückt, kann ein Wert aus der Liste möglicher Werte ausgewählt werden. Ungültige Eigenschaftswerte? Hinweis Beim Wechsel in eine andere Zeile wird der eingegebene Wert einer Gültigkeitsprüfung unterzogen. Ungültige Werte werden nicht zugelassen. Für jede Eigenschaft kann mit der Taste (F1) eine kontextsensitive Hilfe aufgerufen werden. Das Setzen von Eigenschaften ist in Visual Basic der halbe Weg zum fertigen Programm. Unterschätzen Sie nicht die Macht der Eigenschaften. Viele Zeilen Code meiner Programme zeigten sich im Nachhinein als überflüssig, nachdem ich die Eigenschaften der Objekte besser definiert hatte. Der Projektmappen-Explorer Der Projektmappen-Explorer zeigt eine Liste aller im Projekt oder der Projektgruppe verwendeten Module. Bild 1.37 zeigt dabei nur eine kleine Auswahl der möglichen Projektdateien. Ob normale Formulare oder Module, 75 Der Projektmappen-Explorer Klassen oder Steuerelementdateien, im Projektmappen-Explorer sind alle Projektdateien aufgelistet. Auch bei kleineren Projekten mit wenigen Dateien sollten Sie die strukturierte Anzeige des Projektmappen-Explorers nutzen. Sie erleichtert es Ihnen, eine dem Projekt zugehörige Datei schnell zu finden und zu öffnen. Bild 1.37: Der Projektmappen-Explorer Vom Projektmappen-Explorer aus kann das Formularfenster oder das Codefenster eines Moduls geöffnet werden. Es muss lediglich das entsprechende Modul in der Liste markiert werden. Jetzt wird entweder das Symbol Code anzeigen angewendet, um das zugehörige Codefenster zu öffnen, oder es wird das Symbol Designer anzeigen angewendet, um das zugehörige Formularfenster zu öffnen. Wird ein Modul im Projektfenster doppelt angeklickt, so wird für Formulare automatisch das Formualarfenster, für Module automatisch das Codefenster geöffnet. Kontextmenüs des Projektmappen-Explorers Wenn im Projektmappen-Explorer ein Projekt markiert ist und dann die rechte Maustaste gedrückt wird, so öffnet sich das Kontextmenü aus Bild 1.38. 76 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Bild 1.38: Das Projekt-Kontextmenü des Projektmappen-Explorers Alle in diesem Menü zu Verfügung stehenden Menüpunkte beziehen sich auf das markierte Projekt. Sie können hier z.B. das Projekt erstellen oder dem Projekt neue Module hinzufügen. Als Startprojekt festlegen In diesem Kontextmenü möchte ich Sie noch auf den Menüpunkt ALS STARTPROJEKT FESTLEGEN aufmerksam machen. Visual Basic hat ein sog. »Startprojekt«. Dabei handelt es sich um jenes Projekt, dessen Name im Projektmappen-Explorer fett dargestellt wird. Dieses Projekt wird beim Start des Interpreters über die Taste (F5) oder das entsprechende Symbol der Symbolleiste von Visual Basic gestartet. Einstellen müssen Sie das Startprojekt nur, wenn Sie eine Projektgruppe bearbeiten, die mehrere startbare Projekte enthält. 77 Der Projektmappen-Explorer Falls Sie beim Betätigen der rechten Maustaste nicht das Menü aus Bild 1.38 sehen, sondern ein anderes Kontextmenü, so befanden Sie sich wahrscheinlich mit dem Mauszeiger nicht über dem Eintrag Projekt des Projektmappen-Explorers. In diesem Fall zeigt der Projektmappen-Explorer nämlich das Kontextmenü des jeweiligen Moduls. Das Kontextmenü eines Formulars sehen Sie in Bild 1.39. Bild 1.39: Das Kontextmenü eines Formulars Alle Menüpunkte eines solchen Kontextmenüs beziehen sich ausschließlich auf das entsprechende Modul, über dem Sie die rechte Maustaste betätigt haben. 78 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Das Codefenster Das Codefenster, auch Editor genannt, präsentiert sich mit einigen nützlichen Eigenschaften. Zuerst wird Ihnen wohl der senkrechte Strich am linken Rand auffallen. Dies ist der so genannte Indikatorrand (Bild 1.40). Bild 1.40: Das Codefenster mit Indikatorrand Haltepunkte setzen Hier kann direkt per Mausklick ein Haltepunkt gesetzt werden, indem man einfach auf den Indikatorrand neben der entsprechenden Zeile klickt. Es erscheint daraufhin ein roter Kreis (Bild 1.41) auf der Kennzeichenleiste, der die Zeile als Haltepunkt markiert. Indikatorrand Ebenfalls auf dem Indikatorrand angezeigt werden Lesezeichen und die aktuell bearbeitete Anweisung beim Einzelschrittbetrieb. Dieser Rand lässt sich über die Optionen ausschalten. Lesezeichen bieten die Möglichkeit, eine Stelle im Code zu markieren, um später bei Bedarf direkt dorthin springen zu können. 79 Das Codefenster Lesezeichen setzen Sie setzen ein Lesezeichen entweder über das Menü BEARBEITEN->TEXTMARKEN->LESEZEICHEN UMSCHALTEN oder über das entsprechende Symbol in der Symbolleiste Bild 1.41: Lesezeichen und Haltepunkt auf dem Indikatorrand Es erscheint daraufhin ein blaues Rechteck mit abgerundeten Ecken (Bild 1.41) vor der entsprechenden Zeile in der Kennzeichenleiste. Es können beliebig viele Lesezeichen definiert werden. Lesezeichen können über das Menü BEARBEITEN->TEXTMARKEN>NÄCHSTES LESEZEICHEN oder VORIGES LESEZEICHEN sequenziell angesprungen werden. Das Löschen von Lesezeichen erfolgt analog dem Setzen derselben. Einige weitere Leistungen von Visual Basic lassen sich nicht auf den ersten Blick erkennen. Je nachdem welche Optionen im Optionsdialog aktiv sind, verfügt der Editor z.B. über folgende Funktionen: Drag & Drop Drag&Drop: Wie bei Microsoft Word können Sie Textblöcke mit der Maus verschieben oder kopieren. 80 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Zum Verschieben markieren Sie den gewünschten Code. Nun kann der Block einfach an die neue Position gezogen werden. Der markierte Block wird dort eingetragen und an der ursprünglichen Stelle entfernt. Wenn Sie den Block kopieren wollen, müssen Sie zusätzlich die Taste (Strg) gedrückt halten. Automatische Anweisungsergänzung Automatische Anweisungsergänzung: Wenn Sie im Code auf ein Objekt mit einer Methode oder Eigenschaft Bezug nehmen, so wird Ihnen nach Eingabe des Punktes eine Drop-down-Liste angezeigt, die alle Methoden und Eigenschaften des Objekts enthält (Bild 1.42). Bild 1.42: Automatische Anweisungsergänzung im Codefenster Mit den Pfeiltasten oder mit der Maus wählen Sie Ihr gewünschtes Element. Wenn Sie dann die Leertaste oder die Tabulatortaste drücken, wird das gewählte Element automatisch rechts hinter dem Punkt eingetragen. 81 Das Codefenster Dies erleichtert Ihnen die Suche nach den verfügbaren Elementen des Objekts und verhindert darüber hinaus Schreibfehler. Die Automatische Anweisungsergänzung kann im Dialog Optionen unter Text-Editor->Basic>Allgemein->Members automatisch auflisten aktiviert werden. Parameterinformationen Parameterinformationen: Dies ist ein weiteres Hilfsmittel, um Fehleingaben zu verhindern. Wenn im Dialog Optionen in Text-Editor ->Basic->Allgemein->Parameterinformationen aktiviert wurde, werden Sie beim Eingeben eines Funktionsaufrufs automatisch von den zugehörigen Parametern in Kenntnis gesetzt (Bild 1.43). Bild 1.43: Automatische Parameterinformationen zeigt die Parameter der Methode MsgBox Es wird ein Infofenster unter Ihrer aktuellen Zeile aufgeblendet, welches die Funktionssyntax anzeigt. Das erste Argument wird fett dargestellt. Wenn zu diesem ein Wert eingegeben wurde, wechselt die Markierung auf das zweite Argument, und so weiter. 82 Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Es kann Ihnen somit nicht mehr passieren, dass Sie zu wenig Argumente oder einen falschen Typ an eine Funktion übergeben. All diese Hilfsmittel erreichen Sie auch über das Kontextmenü des Codefensters. Hiermit lässt sich die Bearbeitung über Menübefehle abkürzen. Die Werkzeugsammlung und das Formularfenster Zwei weitere, nicht wegzudenkende Elemente der Visual Basic-Entwicklungsoberfläche sind die Werkzeugsammlung, auch Toolbox genannt, und das Formularfenster. Mit diesen zwei Werkzeugen wird im Wesentlichen die Oberfläche eines Programms erstellt. Ich habe dabei bewusst das Wort »programmiert« nicht verwendet, denn die Erstellung einer Oberfläche ist in Visual Basic nichts anderes als das Zusammenstellen von mehreren Objekten ins Formularfenster. Ein Formularfenster kann für jedes Programm-Objekt mit grafischer Oberfläche (z.B. eine Form) geöffnet werden. Beispielsweise könnte sich in Ihrem Projekt ein Modul namens Form1 befinden. Form1 ist ein Objekt vom Typ Form. Wird Form1 im ProjektmappenExplorer doppelt angeklickt, so wird das Objekt Form1 ins Formularfenster angezeigt (Bild 1.44). Bild 1.44: Das Objekt Form1 im Objektfenster Form1 kann jetzt wiederum weitere Objekte, beispielsweise ein Objekt vom Typ Button, also eine Schaltfläche, beinhalten. 83 Die Werkzeugsammlung und das Formularfenster Objekte hinzufügen Die Werkzeugsammlung ist das einzige Intrument, mit dem man neue Objekte in ein Formularfenster aufnimmt. Dabei können Sie Objekte anhand ihrer grafischen Darstellung und ihres Namens in der Werkzeugsammlung identifizieren (Bild 1.45). Bild 1.45: Die Toolbox Hinweis Um eine Schaltfläche auf der Form zu platzieren, wird diese, wie in Bild 1.45 angedeutet, in der Werkzeugsammlung doppelt angeklickt. Daraufhin wird das neue Objekt, in diesem Fall eine Schaltfläche, auf dem Formular (Objekt Form1) platziert. 84 Es ist möglich, mehrere Formularfenster gleichzeitig geöffnet zu halten. Wird in der Werkzeugsammlung ein Objekt doppelt angeklickt, so wird es jeweils dem gerade aktiven Formularfenster hinzugefügt. Informationen zu allen weiteren Fähigkeiten der Werkzeugsammlung sowie deren Konfiguration finden Sie in einem späteren Seminar. Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Auch wenn sich in einem Formularfenster mehrere Objekte befinden, ist immer nur eines aktiv. Eine Ausnahme dieser Regel gibt es nur bei Mehrfachselektionen, die für Massenänderungen von Eigenschaften verwendet werden. Das aktive Objekt in einem Objektfenster wird durch einen Markierungsrahmen bestehend aus weißen ausgefüllten Quadraten gekennzeichnet (Bild 1.46). Bild 1.46: Größe von Objekten im Objektfenster ändern Objektgrößen mit der Maus ändern Wenn Sie die Maus über eines dieser Quadrate bewegen, so verändert sich der Mauszeiger zu einem Pfeil (Bild 1.46). Jetzt kann die Größe des Objektes verändert werden, indem die Maus bei gedrückter linker Taste bewegt wird. Nach dieser Aktion haben sich die zugehörigen Objekteigenschaften (Size.Heigth, Size.Width) im Eigenschaftenfenster automatisch verändert. Position eines Objekts verändern Um die Position eines Objekts zu verändern, muss das Objekt ins Formularfenster im Bereich innerhalb des Markierungsrahmens angeklickt werden. Es kann dann bei gedrückter linker Maustaste verschoben werden. Auch in diesem Fall werden Sie feststellen, dass sich die zugehörigen Eigenschaften (Location.Y, Location.X) im Eigenschaftenfenster automatisch verändert haben. 85 Die Werkzeugsammlung und das Formularfenster Änderung von Eigenschaften im Eigenschaftenfenster Eigenschaften bestimmen das Aussehen und das Verhalten von Steuerelementen. Neben deren Größe können Sie beispielsweise auch deren Farbe oder die Inhalte von Bildfeldern festlegen. Nur die Eigenschaften Größe und Position eines Objekts sind, wie oben beschrieben, schnell und leicht mit der Maus zu ändern. Alle anderen Eigenschaften eines Objekts müssen über das Eigenschaftenfenster verändert werden. Um dies zu bewerkstelligen, muss das Objekt, dessen Eigenschaften verändert werden sollen, ins Formularfenster aktiviert werden. Das Eigenschaftenfenster wechselt dann automatisch auf das aktivierte Objekt. Plausibilisierung von Eigenschaften Jetzt kann in der Liste der Eigenschaften eine gewählt und verändert werden. Sobald das Eingabefeld verlassen wird, wird die Eingabe einer Plausibilitätsprüfung unterzogen. Ist die Eingabe gültig, wird die Eigenschaft übernommen. Bild 1.47: Eine Eigenschaft im Eigenschaftenfenster ändern 86 Hinweis Kapitel 1: Die Visual Basic .NET-Entwicklungsumgebung Am Beispiel der Schaltfläche kann dies auf einfache Weise demonstriert werden. Aktivieren Sie zunächst die Schaltfläche ins Formularfenster und anschließend die Eigenschaft Text im Eigenschaftenfenster (Bild 1.47). Jetzt kann der Wert der Eigenschaft Caption geändert werden, indem in der rechten Spalte ein neuer Text eingegeben wird. Nach Bestätigung der Eingabe durch die Taste (Enter) bzw. nach dem Verlassen des Feldes wird der neue Wert der Eigenschaft im Objektfenster sofort übernommen. 87