ABOUT Visual Basic Programmieren Programmierung Download Downloads Tips & Tricks Tipps & Tricks Know-How Praxis VB VBA Visual Basic for Applications VBS VBScript Scripting Windows ActiveX COM OLE API ComputerPC Microsoft Office Microsoft Office 97 Office 2000 Access Word Winword Excel Outlook Addins ASP Active Server Pages COMAddIns ActiveX-Controls OCX UserControl UserDocument Komponenten DLL EXE
Diese Seite wurde zuletzt aktualisiert am 07.06.2002

Diese Seite wurde zuletzt aktualisiert am 07.06.2002
Aktuell im ABOUT Visual Basic-MagazinGrundlagenwissen und TechnologienKnow How, Tipps und Tricks rund um Visual BasicActiveX-Komponenten, Controls, Klassen und mehr...AddIns für die Visual Basic-IDE und die VBA-IDEVBA-Programmierung in MS-Office und anderen AnwendungenScripting-Praxis für den Windows Scripting Host und das Scripting-ControlTools, Komponenten und Dienstleistungen des MarktesRessourcen für Programmierer (Bücher, Job-Börse)Dies&Das...

Themen und Stichwörter im ABOUT Visual Basic-Magazin
Code, Beispiele, Komponenten, Tools im Überblick, Shareware, Freeware
Ihre Service-Seite, Termine, Job-Börse
Melden Sie sich an, um in den vollen Genuss des ABOUT Visual Basic-Magazins zu kommen!
Informationen zum ABOUT Visual Basic-Magazin, Kontakt und Impressum

Zurück...

Titelmaße

Zurück...


Anzeige

(-hg) mailto:hg_captionheight@aboutvb.de

Die reine Höhe der Titelzeile eines Forms lässt sich aus den von Visual Basic gelieferten Informationen (Eigenschaften des Forms usw.) nicht solide und zuverlässig ermitteln. Doch die API-Funktion GetSystemMetrics liefert die in den Bildschirmeigenschaften eingestellte Höhe der normalen Titelzeile oder der Titelzeile eines Werkzeugfensters unter Angabe der Index-Konstanten SM_CYCAPTION bzw. SM_CYSMCAPTION.

Da die API-Funktion GetSystemMetrics die Werte immer in der Maßeinheit Pixels zurückgibt, erledigen die beiden folgenden Funktionen CaptionHeight und SmallCaptionHeight gleich die Umrechnung in TWIPS. Dazu lassen Sie einfach die Angabe im optionalen Parameter ScaleMode weg, oder geben die Enumerationskonstante chTwips an (deren Wert identisch zu der VB-eigenen Konstante vbTwips ist). Möchten Sie den Wert doch lieber in Pixels erhalten, geben Sie chPixels (gleichfalls identisch zu vbPixels) an.

Private Declare Function GetSystemMetrics Lib "user32" _
 (ByVal nIndex As Long) As Long

Public Enum CaptionHeightScaleModeConstants
  chTwips = vbTwips
  chPixels = vbPixels
End Enum

Public Function CaptionHeight(Optional ByVal ScaleMode _
 As CaptionHeightScaleModeConstants = chTwips) As Single

  Const SM_CYCAPTION = 4
  
  Select Case ScaleMode
    Case 0, chTwips
      CaptionHeight = GetSystemMetrics(SM_CYCAPTION) _
       * Screen.TwipsPerPixelY
    Case chPixels
      CaptionHeight = GetSystemMetrics(SM_CYCAPTION)
    Case Else
      Err.Raise 5
  End Select
End Function

Public Function SmallCaptionHeight(Optional ByVal ScaleMode _
 As CaptionHeightScaleModeConstants = chTwips) As Single

  Const SM_CYSMCAPTION = 51
  
  Select Case ScaleMode
    Case 0, chTwips
      SmallCaptionHeight = GetSystemMetrics(SM_CYSMCAPTION) _
       * Screen.TwipsPerPixelY
    Case chPixels
      SmallCaptionHeight = GetSystemMetrics(SM_CYSMCAPTION)
    Case Else
      Err.Raise 5
  End Select
End Function

Möchten Sie die Höhe der Titelzeile eines gegebenen Forms ermitteln, können Sie selbst anhand der BorderStyle-Eigenschaft dieses Forms feststellen, ob es sich um ein normales Fenster oder um ein Werkzeugfenster mit schmaler Titelzeile handelt. Sie können aber auch die folgende Funktion GetCaptionHeight verwenden, die diese Ermittlung für Sie vornimmt. Auch hier können Sie wieder die gewünschte Maßeinheit über den Parameter ScaleMode wählen.

Beachten Sie, dass die Funktion immer den Standardwert der Titelzeile für den entsprechenden Form-Typ zurückgibt, unabhängig davon, ob diese tatsächlich sichtbar ist oder nicht.

Public Function GetCaptionHeight(Form As Form, _
 Optional ByVal ScaleMode _
 As CaptionHeightScaleModeConstants = chTwips) As Single

  Select Case Form.BorderStyle
    Case vbFixedToolWindow, vbSizableToolWindow
      GetCaptionHeight = SmallCaptionHeight(ScaleMode)
    Case Else
      GetCaptionHeight = CaptionHeight(ScaleMode)
  End Select
End Function

Modul modCaptionHeight (captionheight.zip - ca. 0,8 KB)


Artikel
Zum Download-Bereich dieses Artikel
Mail an den Autor dieses Artikels

KnowHow
Zur KnowHow-Übersicht

KnowHow-Themen
Themen - Allgemeines
Themen - Entwicklungsumgebung (VB-IDE)
Themen - Forms
Themen - Steuerelemente (Controls)
Themen - Grafik
Themen - Dateien
Themen - UserControls
Themen - Einsteiger-Tipps
Themen - Wussten Sie...?

Übersicht nach Titeln in alphabetischer Reihenfolge
Übersicht nach Erscheinungsdatum

Schnellsuche




Zum Seitenanfang

Copyright © 1999 - 2017 Harald M. Genauck, ip-pro gmbh  /  Impressum

Zum Seitenanfang

Zurück...

Zurück...

Download Internet Explorer