在我几年前开发的代码中,我经常使用它来关闭当前表单,随时按下Escape键:
procedure TSomeForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key = #27 then close;
end;
此行为是为TForm定义的。表单的KeyPreview属性被设置为True,以便表单在任何其他组件之前对按键做出反应。但是,当TEdit组件聚焦时,当按下Escape键时,发出声音( Windows用来表示无效操作的ding声音),这一切对程序的大部分工作都很好。它仍然很好,但我从来没有完全摆脱这个声音。
这
我正在编写一个小程序,将TEdit控件的内容保存到一个文件中。
其思想是用户在TEdit控件中编写内容,然后按下按钮在磁盘上写入文件,但是当尝试编译时,我得到"unit1.pas(37,15) Error:为调用"Close“指定的参数数目错误”
我的窗体只有TEdit控件和一个TButton。
var
Form1: TForm1;
f: text;
procedure TForm1.Button1Click(Sender: TObject);
begin
writeln (f,Edit1.Text);
close (f);
end;
Begin
当我将TEdit与火猴(10.4.1)放在一起时,我将StyleLookup设置为transparentedit,但在安卓系统上,我在底部有一个丑陋的白色边框,当我聚焦编辑时,它会变成绿色。
怎样才能删除它?
我尝试删除所有个性化的样式,但它不起作用,如果我清除StyleLookup在background样式
我唯一要做的就是在我的TEdit中添加一个TRectangle,align Bottom with a Height of 2px。我将Fill.Color设置为背景颜色,但这是一个丑陋的解决方案。
我创建了一个TForm来创建Access数据库中的新用户。
我创建了DBedit1,它用change事件更新Edit1。如果在我的TEdit文件中输入完全新的数据,然后按“插入到查询中的保存”,它就可以保存数据,而不会出现任何问题。
procedure TFNewUser.BtnSaveClick(Sender: TObject);
begin
if (Edit1.Text = '') or (Edit2.Text='') or (Edit3.Text='') or (Edit4.Text='') then begin
我希望当我按下M或m字符时,000000会在特定的TEdit框上输入:
procedure Tfrm.FormKeyPress(Sender: TObject; var Key: Char) ;
var
i : integer;
begin
if Key in ['m'] + ['M'] then Key := '0';
end;
使用这段代码,我可以将'M‘键重新映射到单个字符。如何将“M”重新映射为TEdit框的多个字符?
此函数创建TEdit类型的控件对象,并将其返回到恰好从中调用它的代码中的任何行:
function TBaseForm.CreateEdit(AOwner: TWinControl;
inTop, inLeft, inWidth: integer) : TEdit;
var
edt: TEdit;
begin
edt := TEdit.Create(AOwner);
with edt do begin
Parent := AOwner;
Width := inWidth;