我想通过用Rich编辑器,改变字体。当通过选择字体时,改变选择的字体。不选择字体时,则改变光标所在位置的字体(即改变以后输入文本的字体)。但下面的程序好象,在不选择字体时也改变了这个编辑框内的字体,请高手指点。谢谢!
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ComCtrls;type
TForm1 = class(TForm)
RichEdit1: TRichEdit;
Panel1: TPanel;
Button1: TButton;
FontDialog1: TFontDialog;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}{主要是通过这个单击按钮所弹出的对话框改变字体}
procedure TForm1.Button1Click(Sender: TObject);begin
FontDialog1.Font.Assign(RichEdit1.DefAttributes);
if FontDialog1.Execute then
begin
if RichEdit1.SelLength>0 then
RichEdit1.SelAttributes.Assign(FontDialog1.Font)
else
RichEdit1.DefAttributes.Assign(FontDialog1.Font);
end
end;end.
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, ComCtrls;type
TForm1 = class(TForm)
RichEdit1: TRichEdit;
Panel1: TPanel;
Button1: TButton;
FontDialog1: TFontDialog;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}{主要是通过这个单击按钮所弹出的对话框改变字体}
procedure TForm1.Button1Click(Sender: TObject);begin
FontDialog1.Font.Assign(RichEdit1.DefAttributes);
if FontDialog1.Execute then
begin
if RichEdit1.SelLength>0 then
RichEdit1.SelAttributes.Assign(FontDialog1.Font)
else
RichEdit1.DefAttributes.Assign(FontDialog1.Font);
end
end;end.
解决方案 »
- delphi TFileStream文件拆分有问题,急急!
- 娱乐散分贴: 我一直没搞明白的一个问题----倒底是"分"还是"合"?
- 求最优实现方法!!!用窗口好还是web好?
- 传世游戏引擎
- 十万火急,急需各位帮助
- 手机号、区号、身份证号查询软件,完全免费!欢迎下载!
- 怎么实现当执行QuickRep1.Preview后让报表预览限制在我锁定的区域里(如容器panel里)
- *********介绍个delphi中的语音聊天的控件**********
- 如何在服务应用程序中捕获鼠标消息?UP有分啊!!!!:))
- 小问题,来看看?
- 介绍一种产品,集成在应用系统中实现网络身份认证
- 怎样计算数据库中符合条件t=1的纪录的条数,并将数量复制给edit1
FontDialog1.Font.Assign(RichEdit1.DefAttributes);
if FontDialog1.Execute then
RichEdit1.SelAttributes.Assign(FontDialog1.Font)
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if FontDialog1.Execute then
RichEdit1.SelAttributes.Assign(FontDialog1.Font)
end;