VB MsgBox Funktion hat keine Mittel, um Text zentrieren , die Sie mit der Funktion anzuzeigen. Allerdings können Sie eine entsprechende Funktion , die Anzeige zentriert Text tut. Ein Ansatz zur Schaffung dieser Funktion besteht darin, ein benutzerdefiniertes Formular mit einem Etikett , das dynamisch positioniert sich neu , wenn das Formular mit dem Etikett geändert wird entwerfen. Entwerfen Sie das Formular
Der erste Schritt bei der Erstellung Ihrer eigenen Funktion MsgBox , dessen Text Sie können dynamisch recenter ist es, die individuelle Form , die den Text anzeigt entwerfen. Dies umfasst das Erstellen eines VB Windows Forms -Projekt. Innerhalb VB Entwicklungsumgebung , drücken Sie "Control" und "N" gleichzeitig , dann klicken Sie auf die Windows- Form-Element , ein solches Projekt zu erstellen.
Label-Steuerelement
die Form Design-Fenster angezeigt wird, ziehen Sie ein Label- Steuerelement aus der Toolbox auf das Formular. Positionieren Sie das Etikett überall ; Ihr Programm wird Mitte des Etiketts . Allerdings müssen Sie angeben müssen, dass der Text im Label- zentriert werden müssen. Um dies zu tun , klicken Sie auf die "Text ausrichten "-Eigenschaft im Fenster Eigenschaften . VB wird ein kleines Formular mit neun Tasten auf sie anzuzeigen. Jede Taste zeigt die Ausrichtung für den Text der Bezeichnung . Klicken Sie auf die mittlere Taste , um anzugeben, dass die Label- Text zentriert werden müssen. Füge einen Text auf dem Etikett , indem Sie diesen Text in der Eigenschaft "Text" des Eigenschaften- Fenster . Geben Sie z. B. " Hier ist etwas Text, den ich zum Zentrum möchten. "
Programmierung Fenster
Nach der Gestaltung der Form , um die MsgBox-Funktion simulieren geben Sie die Programmierung Fenster , in dem Sie geben Anweisungen, die Mitte der Label-Steuerelement den Text hält . Durch Drücken von " F7 " bringt Sie zu diesem Fenster.
Formularereignisse
VB Formen können jede Größe der Nutzer will , um sie zu ziehen nehmen . Dieses Verhalten bedeutet, dass Ihr Text nicht zentriert wird wahrscheinlich , wenn Sie erkennen können , wenn das Formular geändert wird , und ändern Sie die Position des Etiketts , die Ihren Text hält dementsprechend werden. Windows- Event-Funktionen tun bieten eine Möglichkeit, Größenänderung und andere Ereignisse zu erkennen . Die spezifische Event-Funktion benötigt, in denen Aussagen geben , die dynamisch Text zentrieren das Paint-Ereignis ist . Wenn VB , um die Form neu zu zeichnen muss , wird dieses Ereignis Funktion verwendet . Größenänderung löst dieses Ereignis , ebenso wie die Form hinter einem anderen Fenster der Anwendung wieder auf.
Customizing Paint-Ereignis
Geben VB Sie Ihren Text - Zentrierung Programm geben das Paint-Ereignis , indem Sie diese Veranstaltung von der Programmierung des Fensters Dropdown-Listen . Klicken Sie auf " Form event " aus dem linken Dropdown- Liste über der Programmierung Fenster , klicken Sie auf die " Farbe " aus dem rechten Dropdown-Liste . VB zeigt die Farbe blank Funktion für Sie mit Ihrem eigenen Aussagen zu füllen .
Berechnungen zur Zentrierung
Mit dem Malen Aussage Mitte ein Label-Steuerelement beinhaltet ein paar grundlegende Berechnungen . Sie würden die gleichen Berechnungen zum Zentrum Text auf physischen Datenträgern ausführen , wie ein Stück Papier. Fügen Sie die folgenden Aussagen in der Paint- Funktion . Diese Aussagen berechnen Sie den linken Rand des Label-Steuerelement , dessen Text Sie Zentrierung . Die Aussage Kommentare erläutern die einzelnen Schritte der Berechnung. Testen Sie Ihr MsgBox Emulator zum Zentrieren Text durch Drücken der Taste " F5" Taste auf der Tastatur . Wenn das Programm Formular angezeigt wird, ziehen Sie eine der Ecken , um die Form zu ändern. Ihr Text wird zentriert bleiben .
'Get Größe Label ' Get Größe der Form " Subtrahieren Etikett Größe von Form size ' Teile durch 2 ' Set Label.LEFT zu
Dim w , w2 führen , difw = Me.Size.Widthw2 = Label1.Size.Widthdif = w - w2dif = DIF /2Label1.Left = DIF