如何選擇TEdit1的所有文字,只要它的用戶點擊或單擊以選中的一些文本TEdit onclick選擇全部?
回答
如何選擇TEdit1的所有文字,只要它
選擇EDIT1用戶點擊在VCL編輯,然後雙擊在OnClick
事件:
procedure TForm13.Edit1Click(Sender: TObject);
begin
Edit1.SelectAll;
end;
您也可以將此事件鏈接到另一個控件,如按鈕。
選擇按鈕,選擇並點擊V
箭頭以選擇要鏈接的事件。
現在無論Edit1.OnClick
和Button1.OnClick
鏈接到同一事件。
如何選擇TEdit1的一些文字,每當它的用戶點擊:
procedure TForm1.Edit1Click(Sender: TObject);
begin
Edit1.SelStart:= 1;
Edit1.SelLength:= 2;
end;
它可以是相當危險的做任何事情超出了TEdit
控件的默認行爲。您的用戶知道標準Windows控件的行爲方式,如果與此有任何偏差都可能導致混淆。
默認情況下,AutoSelect
屬性設置爲True
。
確定編輯控件獲取焦點時是否自動選擇編輯控件中的所有文本。
設置AutoSelect當編輯控件獲得焦點時選擇所有文本。 AutoSelect僅適用於單行編輯控件。
使用自動選擇當用戶更有可能替換編輯控件中的文本而不是追加到它。
當此屬性爲True
時,通過鍵盤操作獲取焦點時,會選擇編輯控件的全部內容。如果控件通過鼠標單擊獲得焦點,則內容不會全部被選中。在這種情況下,您只需按CTRL + A即可全選。雙擊將選擇鼠標下方的單詞。這是底層Windows控件實現的所有標準行爲。
如果你改變選擇響應OnClick
事件,按照當前選定的答案,那麼你會發現這是不可能用鼠標點擊移動插入符號。這是非常違反直覺的行爲。
這就是爲什麼你需要非常小心從改變其默認的控制行爲的典型例子。在測試時不要錯過特定用例,但是當用戶獲得該程序時,他們肯定會發現所有這些皺紋。
您可以安全地做的是從OnDblClick
撥打SelectAll
。這樣做,我相信沒有惱人的副作用。
另一種選擇是在焦點切換到編輯控件時調用SelectAll
,但不是每次單擊控件時。這對用戶來說可能會感覺有點奇怪,但我個人認爲採取這種行動是合理的。如果你想這樣做,你需要處理編輯控件的OnEnter
事件:
procedure TForm1.Edit1Enter(Sender: TObject);
begin
PostMessage(Edit1.Handle, EM_SETSEL, 0, -1);
end;
- 1. CSS選擇全部,選擇一些但不是全部元素?
- 2. jquery:只選擇一個類onclick - 並非全部
- 3. onclick全選textarea
- 4. 全部選擇EF和lambda
- 5. 聯盟全部和選擇
- 6. PyQt:TableWidget全部取消選擇?
- 7. ActiveAndroid全部從類選擇
- 8. 使用jquery選擇全部或取消選擇全部列表框?
- 9. onClick選擇菜單?
- 10. 避免選擇onClick
- 11. 選擇td值onClick
- 12. Onclick圖像選擇
- 13. jQuery複選框選中全部,選擇無並選擇組
- 14. 餘燼複選框 - 選擇1,並非全部全選
- 15. 選中所有onclick on複選框,並全部拒絕
- 16. 如何添加一個選擇全部選項來選擇CDE
- 17. 複選框選擇全部取消選擇並執行功能
- 18. 選擇全部並清除所有選擇複選框
- 19. GXT格子複選框標題選擇/取消選擇全部
- 20. jQuery的選擇複選框 - 選擇全部
- 21. SQL選擇全部或全部用IN子句
- 22. WPF Datagrid「全選」按鈕 - 「全部取消選擇」?
- 23. 如果選擇「全部」,jQuery將取消全選
- 24. Windows Phone的sqlite選擇全部
- 25. sqlite combine從多列中選擇全部
- 26. SQL Server:選擇「值或全部」
- 27. 如何選擇全部使用IQueryable
- 28. Django admin inline:選擇全部刪除?
- 29. jQuery只選擇子類並非全部
- 30. 實現在CheckListView上選擇全部JavaFX
我很困惑。請澄清你的問題。你想知道如何將TEdit設置爲適當的行爲或如何以編程方式執行它? – menjaraz 2011-12-23 13:32:33