X xxxxxxxx Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #1 我想知道怎样使Edit控件内的内容不滚动,也就是说Edit多长,显示的内容就只有多长(因为我输入很多内容的时候,edit 会将内容左移,我现在不想让它 左移,当我输入到本世纪末edit框右边时,就输入不进了)
我想知道怎样使Edit控件内的内容不滚动,也就是说Edit多长,显示的内容就只有多长(因为我输入很多内容的时候,edit 会将内容左移,我现在不想让它 左移,当我输入到本世纪末edit框右边时,就输入不进了)
李 李颖 Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #2 你可以指定TEdit.MaxLength属性, 限制输入的字符数量, 然后TEdit的宽度设置到足够大, 就可以了
L Liu JZX Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #3 procedure TForm1.Button3Click(Sender: TObject); begin SendMessage(edit1.handle,em_limittext,10,0); end;
procedure TForm1.Button3Click(Sender: TObject); begin SendMessage(edit1.handle,em_limittext,10,0); end;
X xxxxxxxx Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #5 我不要用TEdit.MaxLength ,这我知道,我现在用的是柬文(cambodia) 他的一个字很有可能是3个字符,我用Maxlength不好控制,我想当它输入 到右边界时就输入不进去了!
X xxxxxxxx Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #6 我不要用TEdit.MaxLength ,这我知道,我现在用的是柬文(cambodia) 他的一个字很有可能是3个字符,我用Maxlength不好控制,我想当它输入 到右边界时就输入不进去了!
李 李颖 Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #7 那就在OnKeyPress里写代码 var Str:WideString; begin Str:=Edit1.Text; //用WideString来处理 if Length(Str)>xxxx then //如果长度到达上限 Key:=#0; //屏蔽掉 end;
那就在OnKeyPress里写代码 var Str:WideString; begin Str:=Edit1.Text; //用WideString来处理 if Length(Str)>xxxx then //如果长度到达上限 Key:=#0; //屏蔽掉 end;
J Jams Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #8 设置一词法检查,待认为是一个“柬”字且在右边界时,动态设置MaxLength的数值。
Y yck Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #9 可以用TEXTWIDTH来满足你的要求,它可以得到字符串的宽度, 与EDIT的宽度比较一下就可以了。 procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if edit1.width<=form1.canvas.textwidth(edit1.text) then ShowMessage('输入串太长了!'); end;
可以用TEXTWIDTH来满足你的要求,它可以得到字符串的宽度, 与EDIT的宽度比较一下就可以了。 procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if edit1.width<=form1.canvas.textwidth(edit1.text) then ShowMessage('输入串太长了!'); end;
H hubdog Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #11 李颖的方法最好,给个最佳伯乐奖兼最佳拍...奖吧. hubdog一把鼻涕一把泪地说道:老爷太太行行好,给两根骨头吧。
C cAkk Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #12 no. yck的办法才能够真正解决问题. 文本的length和edit的width没有关系吧? 除非是等宽字体,否则通过文本的 length根本不能判断是否达到edit的width. 只有通过textwidth这个函数才有效.
no. yck的办法才能够真正解决问题. 文本的length和edit的width没有关系吧? 除非是等宽字体,否则通过文本的 length根本不能判断是否达到edit的width. 只有通过textwidth这个函数才有效.
H hubdog Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #13 对yck的方法最好。 hubdog一把鼻涕一把泪地说道:我是墙头草,那里风大那里倒。
W www Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #15 >begin > if edit1.width<=form1.canvas.textwidth(edit1.text) 假如edit1的font与form1的font不一致怎么办?
H hubdog Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #16 procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); var cRect : TRect; bm : TBitmap; begin if ((Ord(Key) <> VK_TAB) and (Ord(Key) <> VK_RETURN) and (Ord(Key) <> VK_LEFT) and (Ord(Key) <> VK_BACK)) then begin Windows.GetClientRect(Edit1.Handle, cRect); bm := TBitmap.Create; bm.Width := cRect.Right; bm.Height := cRect.Bottom; bm.Canvas.Font := Edit1.Font; if bm.Canvas.TextWidth(Edit1.Text + Key) > CRect.Right then begin Key := #0; MessageBeep(-1); end; bm.Free; end; end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); var cRect : TRect; bm : TBitmap; begin if ((Ord(Key) <> VK_TAB) and (Ord(Key) <> VK_RETURN) and (Ord(Key) <> VK_LEFT) and (Ord(Key) <> VK_BACK)) then begin Windows.GetClientRect(Edit1.Handle, cRect); bm := TBitmap.Create; bm.Width := cRect.Right; bm.Height := cRect.Bottom; bm.Canvas.Font := Edit1.Font; if bm.Canvas.TextWidth(Edit1.Text + Key) > CRect.Right then begin Key := #0; MessageBeep(-1); end; bm.Free; end; end;
K kangxy Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #17 DC := GetDC (Edit1.Handle); TempCanvas := TCanvas.Create; TempCanvas.Handle := DC; ....... TempCanvas.Free; ReleaseDC (Edit1.Handle, DC);
DC := GetDC (Edit1.Handle); TempCanvas := TCanvas.Create; TempCanvas.Handle := DC; ....... TempCanvas.Free; ReleaseDC (Edit1.Handle, DC);
X xxxxxxxx Unregistered / Unconfirmed GUEST, unregistred user! 1999-12-24 #18 hubdog very good 其她的都是废话!