如何当按下回车键,就实行某个按钮的功能!(50分)

  • 主题发起人 主题发起人 12w34e
  • 开始时间 开始时间
1

12w34e

Unregistered / Unconfirmed
GUEST, unregistred user!
如何实现在一个窗体中,不管焦点在哪个控件上,只要按下回车键,
就实行某个按钮的功能!谢谢!
 
响应Form的OnKeyPress事件,另外Form的KeyPreview属性要设置为True。
 
不行!!!
 
先在窗体的OnKeyPress事件中
if key=#13 then Button1.Click
然后在每个控件中OnKeyPress事件中选择FormKeyPress(在Object Inspector中)
 
在主窗体的onkeypress事件中
if key=#13 then Button1.Click
然后在每个控件中OnKeyPress事件中选择FormKeyPress
 
可以了,谢谢!不过我可不可以再问一个问题!因为我没分了!
如果你不愿意的话也没关系!
问题:我在combobox中输入一串字符,然后按回车实行查询功能。
操作完成后如何实现把出入的内容自动的添加到combobox的下拉列表中,
以便下次查询时方便!
 
为每一个控件写onkeypress就可以实现了。
 
access :
select XXX from a
group by XXX {XXX=XXX}
sql:
select XXX from a group by ZZZ {XXX可以不等于ZZZ,XXX用*代替也可以 }

while not eof do
combobox.items.add(fieldbyname('字段名').asstring)
next;
end;
 
我用一个button按钮来实现查询功能,我想再加一些语句来实现把combobox中的内容自动
添加到其下拉列表框中。就加这样一句可不可以?
combobox1.items.add(fieldbyname(combobx1.text).asstring)
 
还有我在我自己机子上可以运行的程序,到了别的机子上就有错误了!
我是两千的,别人是九八的
我装了delphi6.0,别人没装
我用的是BDE中的query,但我用了query1.DatabaseName := ExtractFilePath(Application .ExeName );
 
问题:我在combobox中输入一串字符,然后按回车实行查询功能。
操作完成后如何实现把出入的内容自动的添加到combobox的下拉列表中,
以便下次查询时方便!
答:
procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key: Char);
begin
if key = #13 then begin
//
//做完你的查询动作后
//
if StrPos(pchar(TComboBox(Sender).items.Text),Pchar(TComboBox(Sender).Text))=nil then begin
ComboBox1.Items.Add(ComboBox1.Text);
end;
end;
end;
 
sorry 刚才没看清楚你的问题
你可以为这个combobox建一张表Test
a b
com1 test
com2 test
com1 abc

//combobox1,adoquery //combobox1.onexit事件
with adoquery do
begin
close;
sql.clear;
sql.add('select * from test where a='com1' and b="'+combobox1.text+'")
open;
if adoquery.recordcount =0 then
begin
append;
fieldbyname('a').asstring := 'com1';
fieldbyname('b').asstring := combobox1.text ;
post;
end;
end;
//读入combobox1
//可以写在formonshow里面。当然也可以写在其它地方
whit adoquery do
begin
close;
sql.clear;
sql.add('select b from test where a:='com1' group by b');
open;
while not eof do
begin
combobox1.items.add(fieldbyname('b').asstring);
next;
end;
end;

//直接写的,没测试过
 
我觉的主要是你用了一些数据库的控件或别的一些控件或连接文件,而别人的计算机上
没有这些文件,你最好把做好的程序做成安装程序打包分发,在打包时加上你所有你用
的控件这样打包程序能自动的把所有需要的程序都打包进去,在分发你的程序时你就可
以把你程序用在没有安装DELPHI的计算机上了。
可以用INSTALLshield expree for DELPHI的任何一个版本 做,一个很好的东东。
 
Button1.Default :=true;
 
我用的一些控件都是delphi6.0自带的,如何加上?
如何做安装程序?
你说的INSTALLshield expree for DELPHI是一个怎样的东西?哪里有的下载?
 
INSTALLSHIELD EXPREE FOR DELPHI4.0
 
INSTALLSHIELD EXPREE FOR DELPHI4.0 或别的版本现在是INSTALLSHIELD EXPREE FOR DELPHI6.0
是比较专业的安装软件制作工具。网上能下载的地方几乎就没有我曾经想下国没有找到,你可以
去买一张盗版碟吧,新的delphi6.0的光碟中有,delphi5中一般含有INSTALLSHIELD EXPREE FOR DELPHI4.0
几乎75%以上的Delphi程序的分发是用的它做的。其中网上有很多INSTALLSHIELD EXPREE FOR DELPHI4.0 的
使用说明,这个很好找的,你可以去看看。
 
你知道一个自己机子上做好的程序的界面如何才能在其他机子上用的时候不会改变!
如本然排的好好的一个界面到了其他机子上后,就变的不够大了,旁边和底部都出现了
滚动条
 
在你的另一份帖上我说过了。

form用宋体 9 号字。 其它的控件parentfont = true;(特殊的不计)
设计的时候要考虑到分辨率
按目录情况 800*600就可以应付。
当然有更好的办法。只是太复杂了
 
同意楼上,原来我也碰到这样的情况,主要是在2000下及server中,改变字体就可以了
 
后退
顶部