2012-03-21 11 views

cevap

0

OwnerDraw stilleri hiçbiri, TComboBox'da bir düzenleme kutusunun varlığını desteklemez. Bunun yerine ayrı bir TEdit kullanmanız gerekecek.

7

Delphi'nin TComboBox sarıcısı, bir sahibin düzenlenebilir stilini desteklemez, ancak temel Windows denetimi bunu yapar ve etkinleştirmesi kolaydır.

TComboBox = class(StdCtrls.TComboBox) 
public 
    procedure CreateParams(var Params: TCreateParams); override; 
end; 

procedure TComboBox.CreateParams(var Params: TCreateParams); 
begin 
    inherited; 
    if Assigned(OnDrawItem) then 
    Params.Style := Params.Style or CBS_OWNERDRAWFIXED 
end; 

StylecsDropDown ayarlayın ve zaten yapıyoruz gibi OnDrawItem atayın:

böylece gibi yeni soyundan sınıf oluşturun.