Dieser Tipp erweitert die vor kurzem vorgestellte Imports System.ComponentModel Public Class NumericTextBox Inherits TextBox Private _decimal As Integer = 0 Private stDecimal As String Protected Overrides Sub OnKeyPress( _ ByVal e As System.Windows.Forms.KeyPressEventArgs) MyBase.OnKeyPress(e) Select Case Asc(e.KeyChar) Case 8 ' Backspace Case 48 To 57 ' Zahlen If DecimalCont <> 0 AndAlso Me.SelectionLength < 1 Then If Me.Text.Contains(stDecimal) AndAlso _ Me.SelectionStart > Me.Text.IndexOf(stDecimal) Then If Len(Mid(Me.Text, IIf(InStr(Me.Text, stDecimal) = 0, 1, _ InStr(Me.Text, stDecimal)))) > DecimalCont Then e.Handled = True End If End If End If Case Asc(String.Format("{0:0.0}", 0).Chars(1)) ' Decimaltrennzeichen ' Dezimaltrennzeichen zulassen(DecimalZahl <> 0) ' bzw.unterdrücken(DecimalZahl = 0) If DecimalCont = 0 Then e.Handled = True Else If Me.Text.Contains(stDecimal) Then e.Handled = True End If Case Else e.Handled = True End Select End Sub ''' <summary> ''' Legt die Anzahl der Dezimalstellen fest oder gibt diese zurück. ''' </summary> <Description("Anzahl der erlaubten Dezimalstellen")> _ <Category("Numeric")> _ Public Property DecimalCont() As Integer Get Return _decimal End Get Set(ByVal value As Integer) _decimal = value End Set End Property Public Sub New() ' Dezimal-Trennzeichen ermitteln stDecimal = String.Format("{0:0.0}", 0).Chars(1) End Sub End Class Dieser Tipp wurde bereits 10.065 mal aufgerufen.
Anzeige
![]() ![]() ![]() (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. |
vb@rchiv CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats ![]() Dieter Otter PopUp-Menü wird nicht angezeigt :-( In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. sevWizard für VB5/6 ![]() Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) |
||||||||||||||||
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. |