資料視窗中的DATA屬性以及批量複製資料

2021-05-27 07:27:10 字數 1481 閱讀 4056

資料視窗被譽為sybase 的專利技術,以其與資料庫通訊簡單,資料操作簡單,以及方便製作各式複雜報表而著稱。在使用過程中我們需要大量的複製資料,從乙個資料視窗到另乙個資料視窗。這時我們可以使用的技術有如下幾種:

一、rowscopy

遵循兩個資料視窗物件中的列個數、名稱、型別、順序一致的原則。

二、rowsmove

遵循兩個資料視窗物件中的列個數、名稱、型別、順序一致的原則。

三、迴圈語句實現

四、sharedata

遵循兩個資料視窗物件中的列個數、名稱、型別、順序一致的原則。

五、data屬性

本章講述使用資料視窗的data屬性來實現。

資料視窗的data屬性得到的結果

我們指定dwcontrol.descirbe("datawindow.data")得到的是以 tab分割的資料內容。

而通過dwcontrol.object.data返回的是乙個陣列形式的資料。

因此我們可以使用以下兩個方法來批量複製資料。

乙個是引用語法為dwcontrol.object.data[startrow,startcolumn,endrow,endcolumn];//拷貝指定資料行的資料

另乙個是

dwcontrol.importstring(dwcontrol.object.datawindow.data);//拷貝所有資料行

這兩種方法都可以達到我們的目的。

以下講述一下使用

dwcontrol.object.data[startrow,startcolumn,endrow,endcolumn]的注意事項:

a。若data[arg1]僅有乙個引數,則這個引數不可以大於資料視窗中總的資料行數,否則會有錯誤發生。

僅有乙個引數表示需要複製的資料為 第arg1行的資料(從第一列到最後一列)。

b。若data[arg1,arg2]

表示要複製的資料行從第arg1行,第arg2列開始,複製第arg1行,第arg2列的資料。

c。若data[arg1,arg2,arg3.arg4]

表示要複製 第arg1行,第arg2列到第arg3行,第arg4列的資料。

此處的使用要注意:

若arg1比arg3小,則表示複製第arg3行到第arg1行的資料。

若arg2比arg4小,則表示複製第arg4列到第arg2列的資料。

其中arg2和arg4表示第幾列,這個列的序號不要理解為在資料視窗中所看到的列的排列順序。

而是在view-column specification 頁面中看到的列的順序號。

在兩個資料視窗之間引用資料,可以直接這樣來寫

dwcontrol1.object.data=dwcontolr2.object.data;//表示把dwcontrol2中的資料全部拷貝到dwccontrol1中。

此時一般遵循:dwcontrol1中資料列的型別,個數,名稱,順序要與dwcontrol2中一致的原則,若不一致,會出現

意想不到的錯誤,這個嘛,***。

MFC在子視窗中輸入資料在其他視窗中的資料傳輸

第一種方法 子視窗中將輸入資料儲存在建立的檔案中,在其他視窗讀取檔案內容 第二種方法 子視窗標頭檔案中加入 cstring inputaccount 子視窗.cpp檔案函式dodataexchange中加入 ddx text pdx,idc combo1,inputaccount 將控制項輸入資料與...

關於視窗中TopMost屬性的乙個問題

在開發乙個自定義下拉控制項時,由於需要的是乙個可調整尺寸的彈出視窗,因此使用了動態生成視窗的方法,在控制項的構造過程中生成了乙個視窗。在顯示下拉列表時顯示該視窗,並使用bringtofront 方法將視窗顯示在前方。控制項功能正常。使用了一段時間後,使用者要求增加類似ie位址列那樣的自動完成功能。即...

VS2010裡屬性視窗中的生成操作

無,編譯 內容 嵌入的資源.分別是什麼意思?如果是類.cs檔案,就得編譯之後你才能使用的。如果是txt,excle這種檔案,就屬性內容或者資源檔案了。visual studio檔案屬性 無,編譯,內容,嵌入的資源 生成操作 buildaction 屬性 buildaction 屬性指示 visual...