一个关于edit框得到焦点的问题!! (40分)

  • 主题发起人 主题发起人 xiaoxiami0
  • 开始时间 开始时间
X

xiaoxiami0

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure Tcheliangxinxi.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (ssctrl in shift) and (key=76) then
begin
edit1.text:='辽';
end;
end;
采鸟用以上代码,当用户一起按下ctrl键和L键时,在edit1框里显示’辽‘字,但是光标
在辽的前面闪动,怎么让光标在辽字的后面闪动呢?

对了,还有一个问题,怎样通过按按钮模仿键盘按了caps lock键?
 
if (ssctrl in shift) and (key=76) then
begin
edit1.text:='辽';
edit1.SelStart:=2;
end;
 
设置edit1获得焦点,可以这样写:edit1.setfocus
 
procedure TForm1.Button1Click(Sender: TObject);
begin
keybd_event(VK_CAPITAL,$45,KEYEVENTF_EXTENDEDKEY or 0, 0);
keybd_event(VK_CAPITAL,$45,KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP, 0);
end;

 
Edit1.SelStar:=(POS('辽',Edit1.text)+2);
edit1.SelLength:=0;
 
对使用edit.selstart和sellength
 
多人接受答案了。
 
后退
顶部