VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

請問如何得知目前滑鼠指標所在位置

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
logan1109



註冊時間: 2009-06-09
文章: 24


第 1 樓

發表發表於: 星期日 九月 13, 2009 6:31 pm    文章主題: 請問如何得知目前滑鼠指標所在位置 引言回覆

請問如何得知目前滑鼠指標所在位置

條件:
有個 TEXT 的 VALUE="1234567890"

例如:
當滑鼠指標停在 4 跟 5 的中間閃爍
1234|567890

結果:
想要在 4 跟 5 的中間插入文字 "ABCD"
cTmp=THISFORM.TEXT.VALUE
nLen=4 <== 如何得知為 4
return substr(cTmp,1,nLen)+"ABCD"+substr(cTmp,nLen+1)

問題:
當LostFocus 時,該如何得知滑鼠指標停在 4 跟 5 的中間


請指教
感謝
回頂端
檢視會員個人資料 發送私人訊息
ckp6250



註冊時間: 2004-07-30
文章: 1645


第 2 樓

發表發表於: 星期日 九月 13, 2009 10:20 pm    文章主題: 引言回覆

我記得 textbox 或 editbox 中有一個屬性可以取得滑鼠指標的起始位置
您先去查一下 vfp help
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
pilipala



註冊時間: 2009-05-13
文章: 75


第 3 樓

發表發表於: 星期一 九月 14, 2009 8:01 am    文章主題: 引言回覆

SelStart 屬性

傳回使用者在控制項文字輸入區域選定文字的起始點,或者若沒有選定文字,則表示出插入點的位置。也可以指定控制項的文字輸入區域中文字選擇的開始點。設計時期不可用,執行時期可讀寫。

[Form.]Control.SelStart[= nStart]

傳回值
nStart

指定選定文字的起始點,或者若沒有選定文字,則表示出插入點的位置。選定的文字以陰影顯示。該設定的有效範圍從 0 到控制項編輯區域中字元的總數。
說明
適用於:下拉式列示方塊 | 文書編輯方塊 | 數值微調器 | 文字輸入方塊

使用這個屬性與 SelLength 屬性和 SelText 屬性的結合,可以完成以下任務:

在字元字串內設定插入點。

建立一個限制插入點位置的插入範圍。

選定控制項中一組特定的字元 (子字串)。

清除文字。

處理這些屬性時,要注意以下行為:
設定 SelLength 屬性小於 0 將導致一個執行錯誤。
設定 SelStart 屬性大於文字長度,將設定該屬性為實際的文字長度。改變 SelStart 屬性將改變原有選擇為一個插入點,並設定 SelLength 屬性為 0。
設定 SelText 屬性為一個新值,將設定 SelLength 屬性為 0,並用新字串替換選定的文字。
回頂端
檢視會員個人資料 發送私人訊息
Abel



註冊時間: 2005-03-14
文章: 189
來自: 鹿港小鎮

第 4 樓

發表發表於: 星期一 九月 14, 2009 1:51 pm    文章主題: 引言回覆

這個問題也曾經困擾我許久,最近寫了個測試程式,

剛好可以給 先進參考
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
logan1109



註冊時間: 2009-06-09
文章: 24


第 5 樓

發表發表於: 星期一 九月 14, 2009 10:19 pm    文章主題: 引言回覆

感謝指教
答案就是 SelStart 屬性

cTmp=THISFORM.TEXT.VALUE
nLen=THISFORM.TEXT.SELSTART <== 答案
return substr(cTmp,1,nLen)+"ABCD"+substr(cTmp,nLen+1)

原來如此
感謝各位的指教 Laughing
回頂端
檢視會員個人資料 發送私人訊息
guku1101



註冊時間: 2006-07-03
文章: 84
來自: 高雄

第 6 樓

發表發表於: 星期三 一月 06, 2010 7:05 pm    文章主題: 引言回覆

如果text 的CONTORSOURCE 是變數 SELSTART 傳回值都為0 請問有解決的辦法嗎~謝謝
_________________
BB
回頂端
檢視會員個人資料 發送私人訊息 雅虎訊息通 MSN Messenger
logan1109



註冊時間: 2009-06-09
文章: 24


第 7 樓

發表發表於: 星期三 一月 06, 2010 7:47 pm    文章主題: 引言回覆

請問是在問這個 ControlSource 嗎?

據我所了解
SELSTART和ControlSource因該是沒什麼關係
ControlSource只是 "顯示" 資料的內容
重點在於 "滑鼠的指標所停留的位置"

好像是在 GotFocus 的時候才會依照滑鼠停留的位置,更改 SELSTART 的值
正確是在什麼時候變更 SELSTART 的值小弟是不確定
不過確定的是,滑鼠 "點下去" text 的時候 SELSTART 的值就會改變
回頂端
檢視會員個人資料 發送私人訊息
mp484



註冊時間: 2006-08-08
文章: 84


第 8 樓

發表發表於: 星期五 一月 08, 2010 9:44 am    文章主題: 引言回覆

如果text 的CONTORSOURCE 是變數 SELSTART 傳回值都為0 請問有解決的辦法嗎~謝謝

Text的Format屬性不可設為K,否則Selstart都會為0
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作