一个关于大小写的问题

maomaobangchui 2006-12-11 08:11:40
我想让输入的字母自动转换为大写 就写了这条语句 dzgbhEdit.Text:=uppercase(dzgbhEdit.Text);

但是写上之后运行发现 我在输入第一个字母后 光标会自动跑到字母的前面 而不是留在字母后面 这样 如果一次输入多个字母的话 就要在输入第一个字母后人为的把光标挪到后面才能继续如入 请教大家 还需要改什么地方才能正常输入呢 谢谢

另附代码 请指教 谢谢

begin
dzgbhEdit.Text:=uppercase(dzgbhEdit.Text);
zhigongQuery.close;
zhigongQuery.Params.Clear;
zhigongQuery.sql.clear;
zhigongQuery.Params.createparam(ftstring,'zgbh',ptinput).asstring:=dzgbhedit.Text;
zhigongQuery.sql.add('select * from zhigong where zgbh=:zgbh');
//zhigongQuery.ExecSQL;
zhigongQuery.open;
if zhigongQuery.RecordCount=1 then
begin
dzgxmedit.Text:=zhigongQueryzgxm.value;
dgdbhedit.Text:=zhigongQuerygdbh.value;
dgdmcedit.Text:=zhigongQuerygdmc.value;
dbmbhedit.Text:=zhigongQuerybmbh.value;
dbmmcedit.Text:=zhigongQuerybmmc.value;
dgzbhedit.Text:=zhigongQuerygzbh.value;
dgzmcedit.Text:=zhigongQuerygzmc.value;
dsfzcComboBox.Text:=zhigongQueryzgzc.value;
dsfffComboBox.Text:=zhigongQueryzgfa.value;
dzgrcDateTimePicker.Date:=zhigongQueryrcrq.Value;
djqksDateTimePicker.Date:=zhigongQueryjqks.value;
djqjsDateTimePicker.Date:=zhigongQueryjqjs.value;
dxggzDateTimePicker.Date:=zhigongQueryxggzrq.value;
dzgqkComboBox.Text:=zhigongQueryzgqk.value;
dzgxbComboBox.Text:=zhigongQueryzgxb.value;

Button3.SetFocus;
Button3.Focused;
end
else
begin
//dzgbhedit.Text:='';
dzgxmedit.Text:='';
dgdbhedit.Text:='';
dgdmcedit.Text:='';
dbmbhedit.Text:='';
dbmmcedit.Text:='';
dgzbhedit.Text:='';
dgzmcedit.Text:='';
dsfzcComboBox.Text:='';
dsfffComboBox.Text:='';
dzgrcDateTimePicker.Date:=nianyue(now);
djqksDateTimePicker.Date:=nianyue(now);
djqjsDateTimePicker.Date:=nianyue(now);
dxggzDateTimePicker.Date:=nianyue(now);
dzgqkComboBox.Text:='';
dzgxbComboBox.Text:='';
end;
zhigongQuery.close;
end;
...全文
229 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
maomaobangchui 2006-12-11
  • 打赏
  • 举报
回复
谢谢各位 解决了 采用了毛毛的建议
lihuasoft 2006-12-11
  • 打赏
  • 举报
回复
或者这样也行(不要用你自己的uppercase处理)
procedure TForm1.dzgbhEditKeyPress(Sender: TObject; var Key: Char);
begin
if key in ['a'..'z'] then
key:=char(integer(key)-32);
end;
flashtong 2006-12-11
  • 打赏
  • 举报
回复
楼上的对

wxmwxmwxm 2006-12-11
  • 打赏
  • 举报
回复
将Edit控件的CharCase属性设置为ecUpperCase就可以了

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧