请问:如何自定义FONT对话框中的内容
各位大虾:
我通过FONTDIALOG打开了对话框,我想让“字形“的下拉列表中,只显示特定的字型,大小中只显示8,10两个选项。不显示“字集“下拉列表,请问如何实现?谢谢
各位大虾:
我通过FONTDIALOG打开了对话框,我想让“字形“的下拉列表中,只显示特定的字型,大小中只显示8,10两个选项。不显示“字集“下拉列表,请问如何实现?谢谢
解决方案 »
- 如何给一个控件添加双击事件?
- 100分关于fastreport,如何让数据库中的某些整型字段为空的情况下,preview报表时不显示为0?在线等
- 奇怪的pos用法,希望能求得一个答案!
- RICHEDIT问题!!
- 在线等:如何在CGI中返回一个xml文件到客户端
- 关于安装程序的,哪里有full版的
- 如何生成Officexp效果的菜单
- 哪里有Delphi6 Developer's Guide的源码
- 有没有兴趣开发delphi下的游戏(用delphix控件)!
- 转盘游戏(高手指教)
- 昨晚弄了一晚,托盘的tip怎么动态更新呀,老是array与string不对
- 为什么我的LABLE的大小会变啊~~~~~·?
中有很多選擇, 如你的
>>不显示“字集“下拉列
就可設置字體的, 也可選擇, 但它是分 Ansi, TrueType 這類的,
不知你的分類又如何??大小, 就比較麻煩!!!
你可以將選擇大小的去掉!!
procedure TForm1.Button1Click(Sender: TObject);
begin
FontDialog1.Options := [fdEffects, fdLimitSize];
FontDialog1.MinFontSize := 8;
FontDialog1.MaxFontSize := 10;
FontDialog1.Font.Name := '宋体';
FontDialog1.Execute;
end;procedure TForm1.FontDialog1Show(Sender: TObject);
var
I: Integer;
vItemCount: Integer;
vHandle: THandle;
S: string;
begin
vHandle := FindWindowEx(TFontDialog(Sender).Handle, 0, 'ComboBox', nil);
vHandle := FindWindowEx(vHandle, 0, 'ComboLBox', nil);
vItemCount := SendMessage(vHandle, LB_GETCOUNT, 0, 0);
for I := vItemCount - 1 downto 0 do begin
SetLength(S, SendMessage(vHandle, LB_GETTEXTLEN, I, 0));
SendMessage(vHandle, LB_GETTEXT, I, Integer(@S[1]));
if (Pos('宋体', S) <> 1) and (Pos('楷体', S) <> 1) then
SendMessage(vHandle, LB_DELETESTRING, I, 0);
end;
vHandle := FindWindowEx(TFontDialog(Sender).Handle, 0, 'ComboBox', nil);
vHandle := FindWindowEx(vHandle, 0, 'Edit', nil);
SendMessage(vHandle, WM_SETTEXT, 0, Integer(PChar('宋体'))); vHandle := FindWindowEx(TFontDialog(Sender).Handle, 0, 'Static', '字符集(&R):');
ShowWindow(vHandle, SW_HIDE);
vHandle := GetNextWindow(vHandle, GW_HWNDNEXT);
ShowWindow(vHandle, SW_HIDE);
end;//建议你自己设计字体、颜色对话筐还容易实现点~~//另外不要动不动就说“中国有没有懂DELPHI的呀”,难道全中国人都来看你这贴子?你以为你是谁?~~