嘿嘿,大俠看到不要見笑呀...
大家都知道使用DLL的好處.于是我就想把FORM封裝到DLL里面去.
到網上找,發現是MDI和模式窗體的,非模式的也有很多問題.便想自己解決這個問題.
原來是用DLL創建一個對象返回,但發現有很多的問題.
想了半天就去尋根問柳吧.
找到了類.
我就想把類封裝進DLL,到時簡單的返回一個類,然后在主程序里操作不就簡單了?
找了半天發現了TFormClass,于是試了試從DLL導出來,像一般的程序一樣創建窗體發現成功.
接著我又想看看其他的類是不是也能這樣,就拿TFrame來實驗.
function GetDllFrameClass():TFrame stdcall
第一次是這樣聲明的,失敗.奇怪?!
試了好多次都不行,就想到了TFormClass(Ctrl+左鍵),進去看看,發現是這樣聲明的.
TFormClass = class of TForm
哎呀,恍然大悟!!
class(TFrame) 是聲明一個類, 這個類繼承了TFrame類 f: TFrame 是一個對象
class of TFrame 聲明的是類類型, f:TFrameClass 是一個類.
function GetDllFrameClass():TFrame
返回就不是類而是對象了,照TFormClass修改后TFrameClass = class of TFrame
運行...成功,
標簽:
DLL
FORM
MDI
模式
上傳時間:
2013-12-10
上傳用戶:kiklkook
相信您在網路上一定用過如 tin,elm 等工具, 這些軟體有項共同的特色,
即他們能利用上下左右等方向鍵來控制游標的位置. 除此之外, 這些程式
的畫面也較為美觀. 對 Programming 有興趣的朋友一定對此感到好奇, 也
許他能在 PC 上用 Turbo C 輕易地寫出類似的程式, 然而, 但當他將相同
的程式一字不變地移到工作站上來編譯時, 卻出現一堆抓也抓不完的錯誤.
其實, 原因很簡單, 他使用的函式庫可能在 UNIX 上是沒有定義的. 有些
在 Turbo-C 上被廣泛使用的一些函式, 可能在 UNIX 上是不被定義的.
為了因應網路上各式各樣的終端機形態 (terminal), UNIX 上特別發展出
一套函式庫, 專門用來處理 UNIX 上游標移動及螢幕的顯示. 這就是本篇
文章要為您介紹的 - curses.h 函式庫. 利用這個函式庫, 您也可以寫出
像 elm 般利用方向鍵來移動光棒位置的程式. (CCCA 近來所提供的線上選
課程式, 及程式服務界面, 即是筆者利用 curses 發展而成的 )
標簽:
Programm
tin
elm
網路
上傳時間:
2013-11-26
上傳用戶:zxc23456789