vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Oberfläche · MessageBox   |   VB-Versionen: VB608.11.04
MsgBoxEx (GES) - Erweiterte MsgBox

MsgBoxEx (GES) ist eine Message-Box mit erweiterten Funktionen. Sie ist grundsätzlich der standardmäßigen MsgBox in Visual Basic nachempfunden und vor allem im Aufruf stark an das „Original“ angelehnt. Dadurch sollte die Handhabung sehr einfach sein.

Autor:   Guido EisenbeisBewertung:     [ Jetzt bewerten ]Views:  22.961 
ohne HomepageSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

An und für sich wollte ich, glaube ich, schon seit ich mit VB begonnen habe, eine bessere MsgBox programmieren. Es schien mir jedoch immer zu aufwendig, zu diesem Zweck einen solch riesigen Aufwand zu treiben. Stattdessen habe ich eine Form "zurecht gemacht", wenn die normale MsgBox nicht ausreichend für meine Zwecke war.

In den letzten Monaten hatte ich mich zum 1-millionsten Mal darüber geärgert, dass in der Origina-MsgBox einfach ein Button fehlt, sowie die Möglichkeit, eine eigenen Beschriftung auf die Buttons zu bringen. Irgendwie wurde mir auf einen Schlag bewusst, dass der bisherige Aufwand, jedes Mal eine Form zu modifizieren, auch nicht viel geringer war, als der, eine "anständige" MsgBox zu programmieren.

Also fing ich an die MsgBoxEx (GES) zu programmieren. Nach einigen Versuchen stellte ich fest, dass es nicht "mal eben schnell" zu machen war. Ich suchte im Internet nach schon vorhandenen Codes. Doch was ich dort fand, waren allesamt aufgeblähte, umständlich zu handhabende "Projekte". Dies entsprach nicht meiner Vorstellung eines einfach zu handhabenden Codes einer simplen MsgBox. Wenn ich eine MsgBox verwende, will ich nicht noch eine Anleitung studieren, die ich beim übernächsten Projekt wieder vergessen habe.

Deshalb habe ich mich entschlossen, auf unnötigen Firlefanz zu verzichten und die MsgBoxEx (GES) so weit wie möglich am Original zu orientieren. Zudem sollte das Einfügen in ein beliebiges Projekt mit einfachem Hineinkopieren und Einbinden erledigt sein! So entstand ein Code, der zuverlässig funktioniert und den ich mittlerweile schon öfter verwendet habe. Es hat sich herausgestellt, dass meine Befürchtungen, dass ich den Code doch nicht mehr benutze, unnötig waren. Ich habe ihn schon mehrmals in verschiedenen Projekten benötigt und es war kinderleicht, ihn in diese einzubinden.

Syntax (Original):

MsgBox(Prompt[, Buttons As VbMsgBoxStyle = vbOkOnly] 
  [, Title] [, Helpfile, Context]) As VbMsgBoxResult

Syntax („MsgBoxEx (GES)“)

MsgBoxEx(MsgText [, Buttons As String] [, ShowStyle As GES_ShowStyle] 
  [, Title] [, HelpFile] [, Context]) As Integer

Sie sehen, die beiden Aufrufe sind sehr ähnlich. Die "MsgBoxEx (GES)" trennt jedoch die eigentlichen Buttons und den Anzeige-Stil. Sie ist auch um einiges flexibler bei der Angabe einer Hilfedatei Die Handhabung wird in der Hilfe unter "Eingeben von Button-Captions" und "Aufrufen einer Hilfe-Datei" beschrieben.

Die „MsgBoxEx (GES)“ hat folgende Vorteile:

  • Timer, die im eigenen Projekt verwendet werden, werden nicht angehalten
  • der Text der „MsgBoxEx (GES)“ kann zentriert werden
  • absolut einfaches Einbinden einer Hilfetaste und einer beliebigen Hilfedatei
  • die Buttons können frei beschriftet werden
  • Icons werden auf beiden Seiten der „MsgBoxEx (GES)“ angezeigt
  • Hintergrundfarbe kann frei gewählt werden *
  • Schriftfarbe kann frei gewählt werden *
  • und vieles mehr ...
* Diese Eigenschaften können eingestellt werden, indem sie "frmMsgBoxEx" zugewiesen werden.

Ebenso beherscht die „MsgBoxEx (GES)“ (fast) alle Features der "normalen" MsgBox, z.B.:

  • immer im Vordergrund
  • systemeigene Icons und Signaltöne
  • Schließen-Button (X-Button) ausschalten
  • Buttons können mit ShortCuts belegt werden (ALT + ...)
  • weiterschalten der Buttons mit Tab- und Pfeil-Tasten
  • Buttons können mit der Enter-Taste betätigt werden
  • automatisches Anpassen der MaxWidth an Desktop-Auflösung
  • ...

Was die „MsgBoxEx (GES)“ nicht kann:

  • übersetzen der Buttonbeschriftungen in andere Sprachen
  • right-to-left anzeigen auf hebr. und arab. Systemen

Handhabung ist sehr einfach:
Lediglich "frmMsgBoxEx" und "basMsgBoxEx" in ein beliebiges Projekt einbinden --> fertig!
Danach kann die „MsgBoxEx (GES)“ aufgerufen werden.

Skins
Skins für "MsgBoxEx (GES)" sind eine optische Erweiterung (Layout) des Originals. Es werden andere Farben und Button-Effekte erzeugt. Z. B. "Office" oder "Shade". Skins haben keinen Einfluss auf die Funktionen. Die Handhabung wird in der Hilfe unter "Skins" beschrieben. Wer Vorschläge für weitere Skins hat, oder selbst welche entwickelt, kann sie mir gerne zuschicken. Ich freue mich über jede Zuschrift!
Einige Beispiele werden im Demo gezeigt.

Dieser Tipp wurde bereits 22.961 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Neue Diskussion eröffnen

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel