vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Controls · MSFlexGrid/DataGrid   |   VB-Versionen: VB4, VB5, VB610.10.03
AutoSize für das MSFlexGrid-Control

Diesmal zeigen wir Ihnen eine Möglichkeit, wie man die Spaltenbreite des FlexGrid-Controls optimal an den Inhalt der Spalten anpassen kann.

Autor:   Sascha BajonczakBewertung:  Views:  26.284 
ohne HomepageSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Diesmal zeigen wir Ihnen eine Möglichkeit, wie man die Spaltenbreite des FlexGrid-Controls optimal an den Inhalt der Spalten anpassen kann.

Fügen Sie hierzu ein unsichtbares Label-Control auf die Form, auf der sich das MSFlexGrid-Control befindet und nennen das Label lblTemp.

Den nachfolgenden Code am besten in ein Modul packen, so dass man die Prozedur auch in anderen Formen verwenden kann.

' AutoSize für das MSFlexGrid-Control
Public Function Grid_AutoSize(oGrid As MSFlexGrid, oLabel As Label)
  Dim nRow As Long
  Dim nCol As Long
  Dim nWidth As Long
  Dim nMaxWidth As Long
 
  ' Setzen der Eigenschaften
  With oLabel
    With .Font
      .Name = oGrid.Font.Name
      .Size = oGrid.Font.Size
      .Bold = oGrid.Font.Bold
      .Italic = oGrid.Font.Italic
      .Strikethrough = oGrid.Font.Strikethrough
      .Underline = oGrid.Font.Underline
    End With
 
    ' Wichtig!
    .WordWrap = False
    .AutoSize = True
  End With
 
  ' Auswerten und Setzen der Grössen
  With oGrid
    For nCol = .FixedCols To .Cols - 1
      nMaxWidth = 0
      For nRow = .FixedRows To .Rows - 1
        oLabel.Caption = .TextMatrix(nRow, nCol)
        nWidth = oLabel.Width
        If nWidth + 100 > nMaxWidth Then nMaxWidth = nWidth + 100
      Next nRow
 
      .ColWidth(nCol) = nMaxWidth
    Next nCol
  End With
End Function

Aufruf der Funktion:

Grid_AutoSize MSFlexGrid1, lblTemp



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.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle 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.