AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi TComboBoxEx mit höherer Schrift hat immer eine Scrollbar
Thema durchsuchen
Ansicht
Themen-Optionen

TComboBoxEx mit höherer Schrift hat immer eine Scrollbar

Ein Thema von Redeemer · begonnen am 12. Jan 2022 · letzter Beitrag vom 12. Jan 2022
Antwort Antwort
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.053 Beiträge
 
Delphi 2009 Professional
 
#1

TComboBoxEx mit höherer Schrift hat immer eine Scrollbar

  Alt 12. Jan 2022, 13:07
Situation: Ich habe eine TComboBoxEx mit mindestens einem der Folgenden:
  • Font ist höher als der Windows-Standardfont (z.B. eine größere Schriftgröße oder einfach Comic Sans MS)
  • Images.Height > 16
Außerdem hat die TComboBoxEx mindestens zwei Items. (Mit einem einzigen Item gibt es einen anderen Fehler - das Item wird einfach ohne Scrollbar unten abgeschnitten.)

Fehler: Die Dropdown-Liste ist jetzt zu klein für die Items und hat deshalb eine Scrollbar. Der Clientbereich hat eine Höhe von 16*Min(DropDownCount, Items.Count), völlig egal, wie hoch die Items sind. Der Fehler tritt bei einer TComboBox nicht auf.

Frage: Wie kann ich Windows dazu bringen, dass man die eingestellte Anzahl an Items sieht? Oder existiert der Fehler in aktuellen Versionen von Delphi nicht mehr? (Getestet mit 2010.)

Was ich schon probiert habe: Mit dem manuellen Senden der Message CB_SETITEMHEIGHT (weil Delphi das laut Doku unterbindet) keine Veränderung der Höhe der Dropdownliste erreichen. Mit SendMessage(ComboBoxEx1.Handle, CB_SETITEMHEIGHT, 0, 16); wird zwar die zu erwartende Anzahl an Items dargestellt, aber die Items sind nicht hoch genug.

Quelltext für ein Minimalbeispiel:
Delphi-Quellcode:
object ComboBoxEx1: TComboBoxEx
  Left = 8
  Top = 8
  Width = 145
  Height = 25
  ItemsEx = <
    item
      Caption = 'wuppdi1'
    end
    item
      Caption = 'wuppdi2'
    end>
  Style = csExDropDownList
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -15
  Font.Name = 'Tahoma'
  Font.Style = []
  ParentFont = False
  TabOrder = 0
  DropDownCount = 40
end
(Ist möglicherweise derselbe Fehler wie hier.)
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#2

AW: TComboBoxEx mit höherer Schrift hat immer eine Scrollbar

  Alt 12. Jan 2022, 13:19
Mit Delphi 11 sieht das so aus:
Miniaturansicht angehängter Grafiken
12-01-2022_13-17-59.png  
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:15 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz