|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
REN
註冊時間: 2003-06-06 文章: 26
第 1 樓
|
發表於: 星期二 六月 14, 2005 4:38 pm 文章主題: GRID可以這麼做嗎? |
|
|
有做過GRID 滑鼠在上面移動.
但沒有點GIRD物件哦.....
移到GRID上的那一行會變色.......
可以做到嗎.? |
|
回頂端 |
|
|
goto-dream
註冊時間: 2004-05-11 文章: 909
第 2 樓
|
|
回頂端 |
|
|
REN
註冊時間: 2003-06-06 文章: 26
第 3 樓
|
發表於: 星期二 六月 14, 2005 4:50 pm 文章主題: |
|
|
請指導一下. |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 4 樓
|
發表於: 星期二 六月 14, 2005 4:57 pm 文章主題: |
|
|
MouseMove Event _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
bigear
註冊時間: 2004-12-19 文章: 162 來自: 網路的另一端
第 5 樓
|
發表於: 星期二 六月 14, 2005 5:44 pm 文章主題: |
|
|
syntech 寫到: | MouseMove Event |
此辦法有 bug 但是也無其他辦法了
就是滑鼠移動速度太快會有意想不到的結果 _________________ 以上淺見,歡迎批評指教
________________________________________________
山不轉路轉,路不轉人轉,人不轉頭轉,頭不轉眼睛轉,眼睛不轉眼珠轉
眼珠再不轉就去睡覺,睡起來繼續轉 |
|
回頂端 |
|
|
小賴
註冊時間: 2004-12-27 文章: 470
第 6 樓
|
發表於: 星期二 六月 14, 2005 5:54 pm 文章主題: |
|
|
應使用GridHitTest
nRelRow_Out 和 nRelCol_Out 參數可以傳遞給ActivateCell() 方法,以激活表格中指定的單元格。 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 7 樓
|
發表於: 星期二 六月 14, 2005 6:32 pm 文章主題: |
|
|
bigear 寫到: | syntech 寫到: | MouseMove Event |
此辦法有 bug 但是也無其他辦法了
就是滑鼠移動速度太快會有意想不到的結果 |
有"殘影" 嗎? _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 8 樓
|
發表於: 星期二 六月 14, 2005 6:38 pm 文章主題: |
|
|
小賴 寫到: | 應使用GridHitTest
nRelRow_Out 和 nRelCol_Out 參數可以傳遞給ActivateCell() 方法,以激活表格中指定的單元格。 |
你確定沒有漏掉樓主所的這句?
"沒有點GIRD物件" _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
bigear
註冊時間: 2004-12-19 文章: 162 來自: 網路的另一端
第 9 樓
|
發表於: 星期二 六月 14, 2005 6:40 pm 文章主題: |
|
|
syntech 寫到: | bigear 寫到: | syntech 寫到: | MouseMove Event |
此辦法有 bug 但是也無其他辦法了
就是滑鼠移動速度太快會有意想不到的結果 |
有"殘影" 嗎? |
既然你誠心誠意的發問了,我就大發慈悲的告訴你
賓狗
你答對了 _________________ 以上淺見,歡迎批評指教
________________________________________________
山不轉路轉,路不轉人轉,人不轉頭轉,頭不轉眼睛轉,眼睛不轉眼珠轉
眼珠再不轉就去睡覺,睡起來繼續轉 |
|
回頂端 |
|
|
goto-dream
註冊時間: 2004-05-11 文章: 909
第 10 樓
|
|
回頂端 |
|
|
小賴
註冊時間: 2004-12-27 文章: 470
第 11 樓
|
發表於: 星期二 六月 14, 2005 7:05 pm 文章主題: |
|
|
於Grid.MouseMove :
LOCAL nWhere_Out, nRelRow_Out, nRelCol_Out
This.GridHitTest(nXCoord, nYCoord,@nWhere_Out, @nRelRow_Out, @nRelCol_Out)
This.ActivateCell(nRelRow_Out, nRelCol_Out)
於Grid.INIT :
This.SetAll("BackColor", RGB(0,0,200), "TextBox")
This.SetAll("ForeColor", RGB(255,255,0), "TextBox")
FOR i = 1 TO This.ColumnCount
BINDEVENT(This.Columns(i), "MouseMove", This, "MouseMove")
NEXT
以上程式已測試過應沒問題
TO : Syntech兄:
確定沒有Click Mouse
可是Mouse必須移動......廢話 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 12 樓
|
發表於: 星期二 六月 14, 2005 9:14 pm 文章主題: |
|
|
又學到一招,
mousemove 與 gridhittest 的合體技.
趕快抄下來,謝謝. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
REN
註冊時間: 2003-06-06 文章: 26
第 13 樓
|
發表於: 星期三 六月 15, 2005 9:03 am 文章主題: |
|
|
忘了說明:
vfp6可以這麼做嗎.
3Q |
|
回頂端 |
|
|
小賴
註冊時間: 2004-12-27 文章: 470
第 14 樓
|
發表於: 星期三 六月 15, 2005 9:52 am 文章主題: |
|
|
很抱歉忘了還有很多人使用VFP 6.0
BindEvent 需VFP8.0以上才可使用
FOR i = 1 TO This.ColumnCount
BINDEVENT(This.Columns(i), "MouseMove", This, "MouseMove")
NEXT
以上程式是使Grid之每一Column之MouseMove事件變成執行Grid之MouseMove事件
因為每一Grid.Column?.MouseMove 程序碼階同; 因此只把它寫於Grid.MouseMove
如果你使用VFP6.0
那有二招解決:
一.使用最簡單, 最有效, 也最笨的方法:
將Grid.MouseMove之內容置於每一Column之MouseMove
也就是每一Column.MouseMove應是:
This.GridHitTest(nXCoord, nYCoord,@nWhere_Out, @nRelRow_Out, @nRelCol_Out)
This.ActivateCell(nRelRow_Out, nRelCol_Out)
那這樣Grid.MouseMove就可以不用了
Grid.INIT 也只需
This.SetAll("BackColor", RGB(0,0,200), "TextBox")
This.SetAll("ForeColor", RGB(255,255,0), "TextBox")
二.另一招:用 WriteMethod() 將程式碼自動填入每一Column之MouseMove
方法如下
於 Grid.INIT() :
LOCAL cPrgStr
This.SetAll("BackColor", RGB(0,0,200), "TextBox")
This.SetAll("ForeColor", RGB(255,255,0), "TextBox")
cPrgStr = "This.GridHitTest(nXCoord, nYCoord,@nWhere_Out, @nRelRow_Out, @nRelCol_Out)"
cPrgStr = cPrgStr + CHR(13) + "This.ActivateCell(nRelRow_Out, nRelCol_Out)"
FOR i = 1 TO This.ColumnCount
This.Columns(i).WriterMethod("MouseMove", cPrgStr)
NEXT
那這樣Grid.MouseMove也可以不用了 |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4212 來自: Taipei,Taiwan
第 15 樓
|
發表於: 星期三 六月 15, 2005 10:34 am 文章主題: |
|
|
WriteMethod() 我記得是 design time only,
runtime 好像不能用?
還是 form 在 initial 時不算runtime ?
我沒有試過,待有心人回答.
看 小賴 兄 的作法,似乎是可以.
總之,類似情況我都是以"自訂物件"調整成我要的樣子. _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|