Форум: "Основная";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];
ВнизКак получить список фонтов в WideString? Найти похожие ветки
← →
Huk (2006-02-08 15:27) [0]Мастера, добрый день!
Есть такая функция EnumFonts. Юзаю так:
EnumFonts(DC, nil, @EnumFontsProc, Pointer(Test.Strings));
Если Test.Strings не юникодный, то начинаются траблы, вместо данных - кубики.
Спасибо за помощь.
← →
Huk (2006-02-08 15:33) [1]Вопрос снимается.
EnumFontsW, EnumFontsProcW, TLogFontW - рулят.
← →
Huk (2006-02-08 18:47) [2]Мастера, подскажите, как сделать такой список, как верде - каждая строка отображается своим шрифтом?
← →
Джо © (2006-02-08 18:55) [3]Двигайся в таком направлении.
Выставь у ComboBox.Style := csOwnerDrawFixed, в событии OnDrawItem:procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
with TComboBox(Control).Canvas do
begin
if odSelected in State then
begin
Brush.Color := clActiveCaption;
Font.Color := clHighlightText;
end
else
begin
Brush.Color := clWindow;
Font.Color := clWindowText;
end;
FillRect (Rect);
Font.Name := TComboBox(Control).Items[Index];
TextOut(Rect.Left,Rect.Top,TComboBox(Control).Items[Index]);
end;
end;
Ну, и заполнить список:procedure TForm1.Button1Click(Sender: TObject);
begin
ComboBox1.Items.Assign(Screen.Fonts);
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.011 c