| |

Visual-Basic EinsteigerForm vergrößern | |  | Autor: Auge | Datum: 14.05.09 11:30 |
| Hallo,
ich habe folgenden Programmcode in einem Modul zum Vergrößern der Form auf Vollbildgröße,
(leider weiß ich nicht, wo der Code her ist...habe ihn auch von einem Bekannten bekommen)
Das ganze funkioniert auch soweit...bis auf die Spaltenweiten im DBGrid. Die Schriftgröße wird angepasst, aber die Spaltenbreite wird nicht verändert, so dass es in einer starken Vergrößerung nicht mehr passt.
Kann mir einer weiterhelfen? Ich nutze VB6, Win XP Sp3 und in diesem Fall sind ca. 10 DBGrids auf der zu vergrößernden Form.
Hier kommt der Code des Moduls: Aufruf mit "Skalieren Me, True, True"
_____________________________________________________________________________________
Public Sub Skalieren(FRM As Form, ScaleForm As Boolean, ScaleFont As Boolean)
'Skaliert alle Elemente der übergebenen Form
'Elemente in Toolbars müssen separat ausgerichtet werden, da Toolbar nicht skaliert wird
Dim I As Integer
Dim K As Long
Dim SFX As Single
Dim SFY As Single
Const DWidth = 15030 'Screen.Width zur Designzeit
Const DHeight = 11310 'Screen.Height zur Designzeit
SFX = Screen.Width / DWidth 'Skalierfaktor X-Achse
SFY = Screen.Height / DHeight 'Skalierfaktor Y_Achse
On Error Resume Next
If ScaleForm Then
FRM.Width = FRM.Width * SFX
FRM.Height = FRM.Height * SFY
FRM.Left = FRM.Left * SFX
FRM.Top = FRM.Top * SFY
End If
For I = 0 To FRM.Controls.Count - 1
'nur wenn ein Toolbarcontrol auf der Form ist
' If Not TypeOf FRM.Controls(I).Container Is Toolbar Then
'diese Routine wird nur benötigt, wenn sich auf der Form ein SSTab befindet.
If TypeOf FRM.Controls(I).Container Is SSTab Then
If FRM.Controls(I).Left < 0 Then
K = 75000
End If
End If
'wenn die vorstehende Routine für SSTab verwendet wird
FRM.Controls(I).Left = ((FRM.Controls(I).Left + K) * SFX) - K
'wenn die obige Routine für SSTab nicht verwendet wird
'FRM.Controls(I).Left = FRM.Controls(I).Left * SFX
FRM.Controls(I).Top = FRM.Controls(I).Top * SFY
FRM.Controls(I).Width = FRM.Controls(I).Width * SFX
FRM.Controls(I).Height = FRM.Controls(I).Height * SFY
If ScaleFont Then
FRM.Controls(I).Font.Size = FRM.Controls(I).Font.Size * SFY
FRM.Controls(I).HeadFont.Size = FRM.Controls(I).HeadFont.Size * SFY
End If
K = 0
'nur wenn ein Toolbarcontrol auf der Form ist
' End If
Next I
On Error GoTo 0
End Sub
'Die Sub wird z.B. im Form_Load - Ereignis so aufgerufen
'Skalieren Me, True, True
'Der Aufruf bewirkt dass alle Controls auf der Form, die Form selbst und die
'Fontgrössen skaliert werden.
'Wurde die Eigenschaft WindowState der Form zur Designzeit bereits auf
'vbMaximized eingestellt so ist das Skalieren der Form selbst nicht sinnvoll.
'Die Sub wird dann z.B. so aufgerufen:
'Skalieren Me, False, True
_______________________________________________________________________________________________
Für eure Hilfe besten Dank im Voraus
Auge |  |
 Form vergrößern | 1.251 | Auge | 14.05.09 11:30 |
 | 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 |
  |
|
sevISDN 1.0 
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Neu! sevPopUp 2.0 
Dynamische Kontextmenüs!
Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Weitere Infos
|
|
|
Copyright ©2000-2025 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
|
|