{"id":55000389,"date":"2023-10-01T00:00:00","date_gmt":"2023-10-19T13:10:37","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=389"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"twinBASIC_Fenster_oeffnen_schliessen_und_mehr","status":"publish","type":"post","link":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/","title":{"rendered":"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg08.met.vgwort.de\/na\/73d9eb0c479146a2a3673d39950c9fbc\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p><b>Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl&auml;chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element &ouml;ffnest, es wieder schlie&szlig;t und welche &Ouml;ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem &Ouml;ffnen festlegen kannst. Au&szlig;erdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k&ouml;nnen.<\/b><\/p>\n<h2>Fenster oder Form?<\/h2>\n<p>In den folgenden Abschnitten werden wir synonym von Fenstern und Forms sprechen. Allgemein ist zwar nicht jedes Fenster ein <b>Form<\/b>-Objekt, aber im Kontext des vorliegenden Artikels schon. <\/p>\n<h2>Forms &ouml;ffnen<\/h2>\n<p>Wenn wir mit einer neuen twinBASIC-Anwendung starten, haben wir zwei M&ouml;glichkeiten, das erste Fenster zu &ouml;ffnen:<\/p>\n<ul>\n<li>Durch Angabe des Fensters f&uuml;r die Eigenschaft <b>Project: Startup Object<\/b> oder<\/li>\n<li>durch Aufrufen der Prozedur <b>Main<\/b>, der wir den Code zum &Ouml;ffnen eines Fensters zuweisen.<\/li>\n<\/ul>\n<h2>Form als Startfenster &ouml;ffnen<\/h2>\n<p>Wir schauen uns zuerst die erste M&ouml;glichkeit an, wo wir ein Fenster als Startfenster festlegen. Damit wir in unserem neuen Projekt namens <b>Forms_OpenCloseAndCo <\/b>nicht die ganze Zeit mit einem Startform namens <b>Form1 <\/b>arbeiten m&uuml;ssen, l&ouml;schen wir dieses und f&uuml;gen &uuml;ber den Kontextmen&uuml;-Eintrag <b>Add|Add Form <\/b>ein neues <b>Form<\/b>-Element hinzu, das wir gleich nach dem Anlegen <b>frmMain <\/b>nennen.<\/p>\n<p>Achtung: Nur wenn wir dies erledigen, solange der Bearbeitungsmodus des neuen <b>Form<\/b>-Elements im Projektexplorer aktiviert ist, werden alle Elemente des Form-Objekts umbenannt &#8211; also auch die Eigenschaft <b>Name <\/b>des <b>Form<\/b>-Elements, der Name der Code behind-Klassendatei und auch der Name der Klasse selbst. Hast Du diesen Zeitpunkt verpasst, kein Problem &#8211; l&ouml;sche das Element einfach wieder und lege es erneut an.<\/p>\n<p>Haben wir dies erledigt, brauchen wir nur noch die Optionen des Projekts aufzurufen und hier den Eintrag <b>frmMain <\/b>auszuw&auml;hlen (siehe Bild 1).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_05\/pic_389_001.png\" alt=\"Einstellen der Startform frmMain\" width=\"424,6267\" height=\"195,0209\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Einstellen der Startform frmMain<\/span><\/b><\/p>\n<p>Starten wir das Projekt nun, wird die Form <b>frmMain <\/b>angezeigt.<\/p>\n<h2>Startform &uuml;ber die Prozedur Main &ouml;ffnen<\/h2>\n<p>Die zweite M&ouml;glichkeit ist das &Ouml;ffnen des Fensters per Code. Wenn wir das Startformular <b>frmMain<\/b> per Code &ouml;ffnen wollen, statt &uuml;ber die Eigenschaft, entfernen wir es zun&auml;chst aus der Eigenschaft <b>Project: Startup Object<\/b> und w&auml;hlen dort den Wert <b>Sub Main <\/b>aus (siehe Bild 3).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_05\/pic_389_010.png\" alt=\"Einstellen der Startprozedur Main\" width=\"424,6267\" height=\"180,0261\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Einstellen der Startprozedur Main<\/span><\/b><\/p>\n<p>Diese Prozedur m&uuml;ssen wir nun auch noch anlegen. Dazu f&uuml;gen wir dem Projekt mit dem Kontextmen&uuml;befehl <b>Add|Add Module .TWIN supporting Unicode <\/b>ein neues Modul hinzu (siehe Bild 2). Das neue Modul benennen wir in <b>mdlMain <\/b>um.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_05\/pic_389_011.png\" alt=\"Hinzuf&uuml;gen eines Moduls zum Projekt\" width=\"524,6265\" height=\"369,1124\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 3: Hinzuf&uuml;gen eines Moduls zum Projekt<\/span><\/b><\/p>\n<p>Dieses &ouml;ffnen wir nun und f&uuml;gen die folgende Prozedur hinzu:<\/p>\n<pre><span style=\"color:blue;\">Sub <\/span>Main()\r\n     frmMain.Show\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p>Die einzige Anweisung der Prozedur besteht aus dem Objekt <b>frmMain <\/b>und der Methode <b>Show<\/b>. Jede Code behind-Klasse eines <b>Form<\/b>-Elements stellt die Eigenschaften und Methoden der <b>Form<\/b>-Klasse zur Verf&uuml;gung, so zum Beispiel <b>Show<\/b>.<\/p>\n<p>Um die Eigenschaften und Methoden dieser Klasse zu nutzen, m&uuml;ssen wir den Klassennamen angeben, der im Klassenmodul hinter dem Schl&uuml;sselwort <b>Class <\/b>angegeben ist. Sollte bei Dir die Klasse also einmal anders benannt sein als die Klassendatei (diese beiden sind nicht zu verwechseln), verwende den Klassennamen.<\/p>\n<p>Das Codefenster sieht nun wie in Bild 4 aus. Starten wir die Anwendung nun erneut, erscheint das Fenster <b>frmMain <\/b>genauso, als wenn wir es als Startobjekt festgelegt h&auml;tten.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_05\/pic_389_012.png\" alt=\"Anlegen der Startprozedur Main\" width=\"524,6265\" height=\"344,9601\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 4: Anlegen der Startprozedur Main<\/span><\/b><\/p>\n<p>Damit wir sehen, dass tats&auml;chlich die Prozedur das Fenster ge&ouml;ffnet hat, f&uuml;gen wir dieser noch eine Meldung hinzu:<\/p>\n<pre><span style=\"color:blue;\">MsgBox<\/span> \"Vor dem &Ouml;ffnen\"\r\nfrmMain.Show\r\n<span style=\"color:blue;\">MsgBox<\/span> \"Nach dem &Ouml;ffnen\"<\/pre>\n<p>Die erste Meldung wird vor dem Anzeigen des Fensters eingeblendet, die zweite unmittelbar danach.<\/p>\n<h2>Forms schlie&szlig;en<\/h2>\n<p>Bisher sehen wir nur die X-Schaltfl&auml;che oben rechts als M&ouml;glichkeit, das Fenster zu schlie&szlig;en. Au&szlig;erdem k&ouml;nnen wir durch einen linken Mausklick auf das Anwendungs-Icon das Systemmen&uuml; aus Bild 5 anzeigen. Dieses erscheint auch, wenn wir mit der rechten Maustaste auf eine beliebige Stelle der Titelleiste klicken.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_05\/pic_389_013.png\" alt=\"Systemmen&uuml;\" width=\"399,6267\" height=\"384,5684\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 5: Systemmen&uuml;<\/span><\/b><\/p>\n<p>Gegebenenfalls m&ouml;chten wir aber eine eigene Schaltfl&auml;che zum Schlie&szlig;en des Fensters nutzen. Das erledigen wir, indem wir zun&auml;chst eine Schaltfl&auml;che zum Fenster hinzuf&uuml;gen.<\/p>\n<h2>Schaltfl&auml;che anlegen<\/h2>\n<p>Dazu aktivieren wir die Anzeige des Entwurfs des Fensters und klicken in der Toolbox einfach auf das Icon f&uuml;r die Schaltfl&auml;che. Dann ziehen wir im Entwurf einen Rahmen von der gew&uuml;nschten Gr&ouml;&szlig;e der anzulegenden Schaltfl&auml;che auf. Anschlie&szlig;end stellen wir im Eigenschaftsfenster den Namen auf <b>cmdUnload <\/b>und die Beschriftung auf <b>Unload <\/b>ein (siehe Bild 6).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_05\/pic_389_014.png\" alt=\"Anlegen einer Schaltfl&auml;che\" width=\"649,627\" height=\"320,9921\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 6: Anlegen einer Schaltfl&auml;che<\/span><\/b><\/p>\n<p>Danach hinterlegen wir eine Ereignisprozedur f&uuml;r das Ereignis <b>Click<\/b> der Schaltfl&auml;che. Das gelingt ganz einfach, indem wir doppelt auf den Entwurf der Schaltfl&auml;che klicken. twinBASIC &ouml;ffnet nun den Code-Editor mit der automatisch angelegten Prozedur. Dieser f&uuml;gen wir gleich die Anweisung zum Schlie&szlig;en des aktuellen Fensters hinzu. Dabei gibt es allerdings verschiedene Varianten.<\/p>\n<h2>Fenster schlie&szlig;en beziehungsweise entladen<\/h2>\n<p>Um ein Fenster per Code zu schlie&szlig;en, gibt es mindestens die folgenden M&ouml;glichkeiten:<\/p>\n<ul>\n<li><b>Unload Me<\/b>: Schlie&szlig;t das Formular und entfernt das Formular aus dem Speicher.<\/li>\n<li><b>Me.Close<\/b>: Schlie&szlig;t das Formular, dieses bleibt jedoch im Speicher erhalten.<\/li>\n<li><b>SendMessage<\/b>: Ein API-Befehl, der das mit dem Handle referenzierte Fenster und alle enthaltenen Elemente zuverl&auml;ssig terminiert.<\/li>\n<\/ul>\n<p>Im Formular <b>frmMain <\/b>haben wir noch zwei weitere Schaltfl&auml;chen untergebracht, um alle drei Methoden ausprobieren zu k&ouml;nnen. Die &uuml;brigen Schaltfl&auml;chen hei&szlig;en <b>cmdClose<\/b> und <b>cmdSendMessage <\/b>(siehe Bild 7).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_05\/pic_389_015.png\" alt=\"Schaltfl&auml;chen mit verschiedenen Methoden zum Schlie&szlig;en des aktuellen Fensters\" width=\"424,6267\" height=\"322,8157\"\/><\/p>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Visual Basic Entwickler<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000\"><a style=\"color: #ff0000\" href=\"https:\/\/shop.minhorst.com\/magazine\/363\/visual-basic-entwickler-jahresabonnement?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000\">Danach greifen Sie sofort auf <strong>alle rund 200 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000389\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/data\/wp\/v2\/posts\/55000389?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000389\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"2ab7185d08\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl&auml;chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element &ouml;ffnest, es wieder schlie&szlig;t und welche &Ouml;ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem &Ouml;ffnen festlegen kannst. Au&szlig;erdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k&ouml;nnen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662023,66052023,44000031],"tags":[],"yst_prominent_words":[],"class_list":["post-55000389","post","type-post","status-publish","format-standard","hentry","category-662023","category-66052023","category-twinBASICProgrammierung"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \u00f6ffnest, es wieder schlie\u00dft und welche \u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \u00d6ffnen festlegen kannst. Au\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\u00f6nnen.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Andr\u00e9 Minhorst\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"twinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr - Visual Basic Entwickler\" \/>\n\t\t<meta property=\"og:description\" content=\"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \u00f6ffnest, es wieder schlie\u00dft und welche \u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \u00d6ffnen festlegen kannst. Au\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\u00f6nnen.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-10-19T13:10:37+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"-001-11-30T00:00:00+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"twinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr - Visual Basic Entwickler\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \u00f6ffnest, es wieder schlie\u00dft und welche \u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \u00d6ffnen festlegen kannst. Au\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\u00f6nnen.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#blogposting\",\"name\":\"twinBASIC: Fenster \\u00f6ffnen, schlie\\u00dfen und mehr - Visual Basic Entwickler\",\"headline\":\"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr\",\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"http:\\\/\\\/vg08.met.vgwort.de\\\/na\\\/73d9eb0c479146a2a3673d39950c9fbc\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#articleImage\"},\"datePublished\":\"2023-10-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"inLanguage\":\"de-DE\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#webpage\"},\"articleSection\":\"2023, 5\\\/2023, twinBASIC-Programmierung\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vbentwickler.de\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/#listItem\",\"name\":\"2023\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/#listItem\",\"position\":2,\"name\":\"2023\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/5\\\/2023\\\/#listItem\",\"name\":\"5\\\/2023\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/5\\\/2023\\\/#listItem\",\"position\":3,\"name\":\"5\\\/2023\",\"item\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/5\\\/2023\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#listItem\",\"name\":\"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/#listItem\",\"name\":\"2023\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#listItem\",\"position\":4,\"name\":\"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/category\\\/2023\\\/5\\\/2023\\\/#listItem\",\"name\":\"5\\\/2023\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/cropped-header_vbe-1.png\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#organizationLogo\",\"width\":664,\"height\":225},\"image\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Andr\\u00e9 Minhorst\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#webpage\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/\",\"name\":\"twinBASIC: Fenster \\u00f6ffnen, schlie\\u00dfen und mehr - Visual Basic Entwickler\",\"description\":\"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \\u00f6ffnest, es wieder schlie\\u00dft und welche \\u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \\u00d6ffnen festlegen kannst. Au\\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\\u00f6nnen.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/author\\\/andreminhorst-com\\\/#author\"},\"datePublished\":\"2023-10-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#website\",\"url\":\"https:\\\/\\\/vbentwickler.de\\\/\",\"name\":\"Datenbankentwickler\",\"description\":\"Das Magazin f\\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/vbentwickler.de\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"twinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr - Visual Basic Entwickler","description":"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \u00f6ffnest, es wieder schlie\u00dft und welche \u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \u00d6ffnen festlegen kannst. Au\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\u00f6nnen.","canonical_url":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#blogposting","name":"twinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr - Visual Basic Entwickler","headline":"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr","author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"},"image":{"@type":"ImageObject","url":"http:\/\/vg08.met.vgwort.de\/na\/73d9eb0c479146a2a3673d39950c9fbc","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#articleImage"},"datePublished":"2023-10-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00","inLanguage":"de-DE","mainEntityOfPage":{"@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#webpage"},"isPartOf":{"@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#webpage"},"articleSection":"2023, 5\/2023, twinBASIC-Programmierung"},{"@type":"BreadcrumbList","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","position":1,"name":"Home","item":"https:\/\/vbentwickler.de","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2023\/#listItem","name":"2023"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2023\/#listItem","position":2,"name":"2023","item":"https:\/\/vbentwickler.de\/category\/2023\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2023\/5\/2023\/#listItem","name":"5\/2023"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2023\/5\/2023\/#listItem","position":3,"name":"5\/2023","item":"https:\/\/vbentwickler.de\/category\/2023\/5\/2023\/","nextItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#listItem","name":"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr"},"previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2023\/#listItem","name":"2023"}},{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#listItem","position":4,"name":"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr","previousItem":{"@type":"ListItem","@id":"https:\/\/vbentwickler.de\/category\/2023\/5\/2023\/#listItem","name":"5\/2023"}}]},{"@type":"Organization","@id":"https:\/\/vbentwickler.de\/#organization","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","url":"https:\/\/vbentwickler.de\/","logo":{"@type":"ImageObject","url":"https:\/\/vbentwickler.de\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#organizationLogo","width":664,"height":225},"image":{"@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author","url":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","width":96,"height":96,"caption":"Andr\u00e9 Minhorst"}},{"@type":"WebPage","@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#webpage","url":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/","name":"twinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr - Visual Basic Entwickler","description":"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \u00f6ffnest, es wieder schlie\u00dft und welche \u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \u00d6ffnen festlegen kannst. Au\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\u00f6nnen.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/vbentwickler.de\/#website"},"breadcrumb":{"@id":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/#breadcrumblist"},"author":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"creator":{"@id":"https:\/\/vbentwickler.de\/author\/andreminhorst-com\/#author"},"datePublished":"2023-10-01T00:00:00+00:00","dateModified":"-0001-11-30T00:00:00+00:00"},{"@type":"WebSite","@id":"https:\/\/vbentwickler.de\/#website","url":"https:\/\/vbentwickler.de\/","name":"Datenbankentwickler","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","inLanguage":"de-DE","publisher":{"@id":"https:\/\/vbentwickler.de\/#organization"}}]},"og:locale":"de_DE","og:site_name":"Visual Basic Entwickler - Das Magazin f\u00fcr Datenbankentwickler auf Basis von Visual Studio und Co.","og:type":"article","og:title":"twinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr - Visual Basic Entwickler","og:description":"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \u00f6ffnest, es wieder schlie\u00dft und welche \u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \u00d6ffnen festlegen kannst. Au\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\u00f6nnen.","og:url":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/","og:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","og:image:secure_url":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png","article:published_time":"2023-10-19T13:10:37+00:00","article:modified_time":"-001-11-30T00:00:00+00:00","twitter:card":"summary_large_image","twitter:title":"twinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr - Visual Basic Entwickler","twitter:description":"Form-Objekte waren in VB6 und sind in twinBASIC das Element der Wahl, wenn es um die Abbildung von Benutzeroberfl\u00e4chen geht. In diesem Artikel zeigen wir die grundlegenden Techniken rund um die Verwendung und Programmierung von Forms. Dabei zeigen wir, wie Du ein Form-Element \u00f6ffnest, es wieder schlie\u00dft und welche \u00d6ffnungsmodi es gibt. Dabei beschreiben wir auch, wie Du die Position eines Formulars nach dem \u00d6ffnen festlegen kannst. Au\u00dferdem schauen wir uns schon einige der grundlegenden Ereigniseigenschaften von Forms an und zeigen, wie wir diese in Form von Ereignisprozeduren implementieren k\u00f6nnen.","twitter:image":"https:\/\/datenbankentwickler.net\/wp-content\/uploads\/2022\/08\/cropped-header_vbe-1.png"},"aioseo_meta_data":{"post_id":"55000389","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-01-31 04:33:26","updated":"2026-05-16 09:08:47","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2023\/\" title=\"2023\">2023<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/vbentwickler.de\/category\/2023\/5\/2023\/\" title=\"5\/2023\">5\/2023<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\ttwinBASIC: Fenster \u00f6ffnen, schlie\u00dfen und mehr\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/vbentwickler.de"},{"label":"2023","link":"https:\/\/vbentwickler.de\/category\/2023\/"},{"label":"5\/2023","link":"https:\/\/vbentwickler.de\/category\/2023\/5\/2023\/"},{"label":"twinBASIC: Fenster &ouml;ffnen, schlie&szlig;en und mehr","link":"https:\/\/vbentwickler.de\/twinBASIC_Fenster_oeffnen_schliessen_und_mehr\/"}],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000389","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=55000389"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000389\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=55000389"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/categories?post=55000389"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/tags?post=55000389"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=55000389"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}