這裏的設置時改變光標(符號)位置(我用Delphi 7,不知道這是否會在以後發生/早期版本):的RichEdit需要兩次點擊更改活動形式(德爾福)
用兩種形式創建一個新項目。 在第一種形式上放置TMemo
,TRichEdit
和TButton
。 將TMemo
和TRichEdit
的Lines
屬性設置爲123456
。 在TButton
的OnClick
事件處理程序把Form2.Show;
運行應用程序,單擊按鈕,空Form2
將展示和獲得焦點。 現在單擊Form1
中TMemo
的文本「123456」的中間 - 焦點將變回Form1
,並且光標(插入符號)將位於文本「123456」的中間,並按預期方式單擊。 再次點擊Form2
重新給予焦點。 現在單擊Form1
中TRichEdit
的文本「123456」的中間 - 焦點將更改回Form1
,但光標(插入符號)不會位於您單擊的文本「123456」的中間,但在RichEdit
(或之前的任何地方)的第二個空行上。 如果在TRichEdit
的文本「123456」中間的相同位置再次單擊,則光標(插入符號)現在將按預期方式移動到那裏。
因此,TRichEdit
控件獲得焦點,但遊標(插入符號)未按預期移動。
注意:僅當將焦點從一種形式更改爲另一種形式時纔會發生這種情況。以同一形式將焦點從一個控件更改爲TRichEdit控件不會表現出這種有問題的行爲。
我的問題:如何避免在TRichEdit
內需要進行第二次點擊,並在這方面控制行爲像TMemo
。
在此先感謝!
這很可能是什麼與Delphi一起使用,並且只是這些Windows控件的標準行爲。 –
從另一個應用程序切換焦點時也會發生。 –
@DavidHeffernan是的,這也是我的想法,因爲RichEdit控件是Windows控件,而不是Delphi控件。這仍然是一個有問題的混亂行爲,沒有道理,需要解決方案。 – jedivader