![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Шрифты [D7, WinXP]
Yustas © (2004-05-10 06:52:00)Пожалуйста, напишите подробно, как занести список всех установленных шрифтов в TKOLCOmboBox?
enumfontresources - нет такой функции!
Gandalf (2004-05-12 13:28:00) [1]
function EnumFontsProc(var LogFont: TLogFont; var TextMetric: TTextMetric;
FontType: Integer; Data: Pointer): Integer; stdcall;
var
S: PStrList;
Temp: string;
begin
S := PStrList(Data);
Temp := LogFont.lfFaceName;
if (S.Count = 0) or (AnsiCompareText(S.Items[S.Count-1], Temp) <> 0) then
S.Add(Temp);
Result := 1;
end;
var
DC: HDC;
LFont: TLogFont;
FFonts :PStrList;
i:Integer;
begin
FFonts := NewStrList;
DC := GetDC(0);
try
FFonts.Add('Default');
FillChar(LFont, sizeof(LFont), 0);
LFont.lfCharset := DEFAULT_CHARSET;
EnumFontFamiliesEx(DC, LFont, @EnumFontsProc, LongInt(FFonts), 0);
PStrList(FFonts).Sort(false);
finally
ReleaseDC(0, DC);
end;
for i:=0 to FFonts.Count-1 do
ComboBox1.Add(FFonts.Items[i]);
end;
SPeller (2004-05-11 11:12:00) [2]Если найти список шрифтов средствами WinApi вы поняли как, то неужели непонятно как это добавить строковые итемы в ComboBox, хоть он и KOLComboBox?
Dimaxx (2004-05-11 00:49:00) [3]Но зато есть EnumFontFamilies
VMcL (2004-05-10 21:15:00) [4]>>X9 © (10.05.04 19:43) [3]
А посмотреть, как написали разработчики Borland, и переписать под себя религия не позволит?
X9 (2004-05-10 19:43:00) [5]2Игорь Шевченко
Forms.pas и KOL - IMHO вещи немного разные.
Игорь Шевченко (2004-05-10 17:47:00) [6]Yustas (10.05.04 06:52)
RTFS: Forms.pas TScreen.Fonts
X9 (2004-05-10 17:03:00) [7]Посмотри http://delphimaster.ru/cgi-bin/forum.pl?id=1084117252&n=5и немного переделай.