vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Dynamische Textboxen - Width anhand des Textes einstellen - funktioniert nicht? 
Autor: jasmina
Datum: 28.07.10 10:49

Hallo,
arbeite mit VB2008.
Ich erzeuge Dynamische Textboxen; Textbox Name: (txLay)+ laufendeNr.(fiTX).
Das Parent (TXLayoutS1) ist ein Panel.

Die Textboxen inklusive den Addhandler usw. kann ich ohne weiteres erzeugen.
Die Position Top / Left sind ok.
Kann diese per Maus verschieben und vergrößern und verkleinern.

Problem ist, ich möchte jede Textbox auf eine andere Länge, die ich aus der Datenbank entnehme, abhängig von der Schriftart befüllen.
Die Textbox wird vorher auf .AutoSize = True gesetzt - und eine StringVariable mit der Anzahl der Zeichen dem .Text zugewiesen.
Nun versuche ich die .Width der Textbox abzufragen, aber diese hat immer einen festen Wert.
Obwohl ich diesen noch gar nicht eingestellt habe.
Setzt ich vorher einen festen Wert, wird dieser durch die beschriebe Aktion nicht überschrieben.

Woran liegt es?

Dim txLay() As TextBox
Dim fiTX As Integer                      'Lfd.Nummer der Dynamischen Labelfelder
Private Sub Layout_Feld_erzeugen()
  ReDim Preserve txLay(fiTX)        'Array erweitern
  txLay(fiTX) = New TextBox         'Neues Label erzeugen
 
  'Den erzeugten Button verwenden:
  With txLay(fiTX)      
     .Parent = TXLayoutS1               'Parent festlegen
     .Parent.Controls.Add(txLay(fiTX))  'Control Collection erweitern
 
         'Verwaltungsinformationen zuweisen:
      .Name = "txLay" & fiTX.ToString
      .TabIndex = fiTX
      .Tag = fiTX
 
      .AutoSize = True
 
         'Holen der Breite des Feldes aus der Datenbank
       Dim Anz As Integer = modData.ppr_DataTable_Laenge_vk(fiTX)
 
       Dim TE As String 
       Dim ch As Char = "m"c
 
    'String ist je nach Anzahl unterschiedlich lang => 
       TE = TE & TE.PadRight(Anz, ch)
 
      Dim Breite As Integer = .Width       'Abfragen der Breite der Textbox   
 
       .Text = TE                           'Zuweisen des Textes an die 
       ' TextBox
 
[u] ' ==> trozdem ist immer die gleiche .Width angegeben - anhand des 
' Textes ändert sich die
       ' Weite der Textbox nicht!!!  
 
       Breite = .Width                      'Abfragen der Breite der Textbox   
 
       'Positionierung des Labels
       Dim MousePos As Point
 
       MousePos = TXLayoutS1.PointToClient(Windows.Forms.Cursor.Position)
       .Left = TXLayoutS1.PointToClient(Windows.Forms.Cursor.Position).X
       .Top = TXLayoutS1.PointToClient(Windows.Forms.Cursor.Position).Y
 
       .Visible = True
       .BorderStyle = BorderStyle.Fixed3D
 
      'Ereignisse des Labels
     AddHandler .Click, AddressOf txLay_Click
     AddHandler .Enter, AddressOf txLay_Enter
     AddHandler .Leave, AddressOf txLay_Leave
     AddHandler .PreviewKeyDown, AddressOf txLay_PreviewKeyDown
 
     'ADDHANDLER zum Verschieben des Steuerelements ( 
     ' MouseMove/MouseDOWN/MouseUP)
     AddHandler .MouseMove, AddressOf txLay_MouseMove
     AddHandler .MouseDown, AddressOf txLay_MouseDown
     AddHandler .MouseUp, AddressOf txLay_MouseUp
  End With
End Sub
Bitte um Hilfe!
Warum kann ich die z.B die Weite an Hand des Textes verstellen, obwohl ich .AutoSize = True angeben.

oder wie kann ich sonst abhängig von der Schriftart, die Weite der Textbox regulieren?

Danke
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Dynamische Textboxen - Width anhand des Textes einstellen - ...5.280jasmina28.07.10 10:49
Re: Dynamische Textboxen - Width anhand des Textes einstelle...4.152ModeratorDaveS28.07.10 11:07
Re: Dynamische Textboxen - Width anhand des Textes einstelle...4.056jasmina28.07.10 17:40
Re: Dynamische Textboxen - Width anhand des Textes einstelle...4.172ModeratorDaveS28.07.10 20:10
Re: Dynamische Textboxen - Width anhand des Textes einstelle...4.107jasmina29.07.10 10:39
Re: Dynamische Textboxen - Width anhand des Textes einstelle...4.145ModeratorDaveS29.07.10 10:45
Re: Dynamische Textboxen - Width anhand des Textes einstelle...4.111jasmina29.07.10 11:05

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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