Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Масштабирование ComboBox

Автор: Psychologist 9.06.2008 23:08

Очень нужна помощь! Кто чем может... rolleyes.gif
Интересует такой вопрос: как правильно масштабировать (width) элемента ComboBox?
По умолчанию длина должна быть равна размеру самой большой надписи в списке. При этом сам список генерируется, а не заполняется вручную:

procedure TForm1.FormCreate(Sender: TObject);
begin
With ComboBox1 do
begin
Items:=Screen.Fonts;
ItemIndex:=Items.IndexOf(Font.Name);
end;
Caption:='Font Display -'+Font.Name;
end;

Т.е. список заполняется шрифтами (в дальнейшем эти шрифты применяются к элементу DrawGrid.

Процедура, масштабирующая DrawGrid в зависимости от размера формы:
procedure TForm1.FormResize(Sender: TObject);
begin
DrawGrid1.DefaultRowHeight:=ClientHeight div (DrawGrid1.RowCount+2)-1;
DrawGrid1.DefaultColWidth:=ClientWidth div (DrawGrid1.ColCount+1);
Refresh;
end;