主題:怎樣讓表格控件里每一列的text1的dblclick事件執(zhí)行相同的代碼段??? |
樓主
我有一個表單,其中有一表格,可以顯示任何一個在該表單運(yùn)行之前已經(jīng)打開的數(shù)據(jù)表,現(xiàn)在我想在每個單元格中雙擊鼠標(biāo)時執(zhí)行同樣一段代碼.我又不想給每一列的TEXT1控件的dblclick事件都寫上該代碼,因?yàn)?此表格的列數(shù),在顯示不同的數(shù)據(jù)表時可能不同.請問有沒有辦法在運(yùn)行時自動讓每列的TEXT1的DBLCLICK事件執(zhí)行同樣一段代碼. 這個問題有一定難度,敬請高手不吝賜教! |
|
第1樓
設(shè)置表格的AllowCellSelection為.F.,然后直接在表格的DblClick事件中寫代碼 |
|
第2樓
djGong2002的辦法我試過了,可以,但是當(dāng):
表格的AllowCellSelection為.f.后,表格就不能編輯,也不能選擇其中某個單元格的值,即便達(dá)到了目的,又有什么意義呢?
我的要求是既要能選擇每個單元格,又要能單擊或雙擊單元格時運(yùn)行統(tǒng)一的代碼段.
先謝謝 djGong 請專家們繼續(xù)支持我!! |
|
第3樓
既然grid的setall()函數(shù)可以給表格中所有的某個屬性賦同樣的值,難道就沒有一個什么函數(shù)能讓表格控件中的所有text1或header1執(zhí)行某段同樣的代碼嗎? 是我們沒發(fā)現(xiàn)呢? 還是grid控件確實(shí)沒有這樣的功能呢? 希望專家們趕快想辦法?
|
|
作者:moz 發(fā)表時間:2007-3-6 21:09:00 |
第4樓
請老金原諒, 實(shí)在是沒有精力去試什么了, 不過我瞎翻了一下:
.readmethod 讀取方法程序文本 .writemethod 寫入方法程序文本
還有,我看到 GRID 的雙擊,相當(dāng)于文本框的雙擊 -- 全選
還有,記得以前見到過有寫鼠標(biāo)事件的,不知道能不能從鼠標(biāo)入手.
如果是我,走頭無路的時候,我只能做一個隱藏的按鈕, 在每一個要調(diào)用事件的地方加上去 .click 剩下的事情就在余生八十年的歲月里去尋找替代方法. |
|
作者:moz 發(fā)表時間:2007-3-6 22:11:00 |
第5樓
剛又想起一個運(yùn)行時的集合叫做 .Controls 不知道能不能用得上。 |
|
作者:zxl931 發(fā)表時間:2007-3-6 23:43:00 |
第6樓
只要一行代碼可以解決此問題,,無論表格的數(shù)據(jù)源如何變化,,我的方法如下:
假如表單上有一個grid1,在它的AfterRowColChange事件中加入以下一行代碼:
LPARAMETERS nColIndex BINDEVENT(thisform.grid1.columns(nColIndex).text1,"dblclick",thisform,"msg")
說明:本方法綁定“text1"的"dblclick"事件到表單的自定義方法“msg” 如果“msg”中的代碼為“messagebox("123")”,當(dāng)雙擊表格時就會執(zhí)行自定義方法“thisform.msg”并彈出提示。
|
|
作者:moz 發(fā)表時間:2007-3-7 7:06:00 |
第7樓
|
第8樓
還是老鄉(xiāng)歷害,遺憾的是,bindevent()函數(shù)只有VFP9才有(VFP7,8我沒用過,不知道有無,但VFP6肯定沒有).我的系統(tǒng)是VFP6做的,看來要用這個函數(shù)就得升級系統(tǒng)了.
moz先生的writemethod也是VFP6中沒有的(vfp9里有).
謝謝老鄉(xiāng)康佳小雷.
謝謝MOZ先生. |
|
|