![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ComboBox отступ от границ
tmp266011 © (2005-07-16 17:56:00)господа, помогите плз разобраться. Задача состоит в следующем: есть стандартный ComboBox, style = csDropDown, сейчас текстовое значение "внутри него" прибито к левому краю, ну, практически сливается с оформлением, а можно ли сделать отступ от него, ну по типу добавления пробела до основного текста?
т.е вот в TEdit, всё решалось с помощью Edit2.Perform(EM_SETMARGINS,EC_LEFTMARGIN,LPARAM(2)); а вот с ComboBox, такой трюк не прокатывает. что делать? пробовал пр разному и EM_SETRECT, но EM_SETRECT вообще тут похоже работать не будет. итог: что делать, подкрепите сразу примером, пожалуйста. спсибо. надеюсь я доступно изложил свою проблему.
Джо (2005-07-17 02:11:00) [1]Еще проще:
type
THackedComboBox = class (TComboBox)
property EditHandle;
end;
...
SendMessage( THackedComboBox(ComboBox1).EditHandle, EM_SETMARGINS, EC_LEFTMARGIN,LPARAM(20))
default (2005-07-16 19:22:00) [2]
TModifyCombobox = class(TCombobox)
property EditHandle;
end;
var
Form1: TForm1;
X: TModifyCombobox;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
X := TModifyCombobox.Create(Self);
X.Parent := Self;
SendMessage(X.EditHandle, EM_SETMARGINS, EC_LEFTMARGIN,LPARAM(2))
end;