none
請問如何取得類別庫裡的表單的某個值呢? RRS feed

  • 問題

  • 請問前輩:

    小弟想寫一個郵遞區號查詢的類別庫,裡頭有一個表單畫面,供使用者查詢郵遞區號。

    但現在遇到一個問題就是我要怎樣把使用者選好的資料帶回呢? 也就是從另一專案裡呼叫此表單,要怎樣把值回傳到呼叫的表單呢?

    謝謝~~~~

     

    2007年5月11日 上午 03:29

解答

  • 既然都已經是類別庫了,那你認為要怎麼由類別物件中取出資料呢?

    只要你掌握這點,這個問題就很好解了。

     

    提示:屬性,類別層級變數。

    2007年5月11日 上午 03:40
    版主
  • 兩個方式

    不過殊途同歸

    第一. 類別中+全域屬性=>專案中取回

    第二.直接在專案中設全域變數 在類別庫中 運算結果 填入全域變數

    其實都一樣

     

    另外補充一下  郵遞區號有3+2碼的 你可以使用WEB SERVICE的方式直接去取網路資源就好了不需另外寫(很多談到WEB SERVICE的書都有標準範例) 但如果你CLIENT的電腦 不上網 那就沒辦法了

    如果只有3碼的話 (現在中華郵政已經改自動化郵件處理3碼視同沒填,還是人工處理)所以等於沒用

    2007年5月11日 上午 04:55

所有回覆

  • 既然都已經是類別庫了,那你認為要怎麼由類別物件中取出資料呢?

    只要你掌握這點,這個問題就很好解了。

     

    提示:屬性,類別層級變數。

    2007年5月11日 上午 03:40
    版主
  • 兩個方式

    不過殊途同歸

    第一. 類別中+全域屬性=>專案中取回

    第二.直接在專案中設全域變數 在類別庫中 運算結果 填入全域變數

    其實都一樣

     

    另外補充一下  郵遞區號有3+2碼的 你可以使用WEB SERVICE的方式直接去取網路資源就好了不需另外寫(很多談到WEB SERVICE的書都有標準範例) 但如果你CLIENT的電腦 不上網 那就沒辦法了

    如果只有3碼的話 (現在中華郵政已經改自動化郵件處理3碼視同沒填,還是人工處理)所以等於沒用

    2007年5月11日 上午 04:55
  • 謝謝兩位前輩的回覆!!

    我本來是用一個按鈕去new一個Form,但發現他會把整個流程跑完,除非你用強制型表單,才能做到及時把值秀到控制項。

    所以用全域物件或把FORM宣告為全域的方法都可以。

    謝謝兩位前輩的指教~~~~

    另有個問題想請教前輩們:

    就是你們在為一個系統設計架構時,是怎樣去分辨何時該用類別?何時該用模組?何時該用介面呢?

    在哪種情況之下一定要用類別或介面呢?

    看了好多的書也知道這些觀念,只是在實作時很難去區分,因為感覺可以用很多的方式去完成一個功能。

    只是常常在思考一個問題就是,要用哪一種方式才是最好的用法呢?

    謝謝~~~

     

     

    2007年5月11日 上午 09:24
  • 1.SUB(子函數 vb6叫副程序) 與 FUNCTION(函式) 

    2.類別,元件與使用者自訂控制項

    這兩大類不太一樣

    ANS1

    通常 SUB 和FUNCTION 是只能在專案中使用

    如果 SUB 是將一些 程序 歸類起來 方便 多個控制項直接呼叫 有引數沒有傳回值

    FUNCTION 是有引數也有傳回值 可能包函你需要運算取得的結果 方便傳回 給呼叫FUNCTION的程序 傳回值可作第二次的運用或顯示

    ANS2

    類別元件與控制項 屬於 軟體工程中的 軟體IC概念 可重複運用 也可散發的方式 就是以前VB6.0的DLL 與 OCX   等等COM的意思

    通常運用在 程式開發中 可能不同的程式 但常常運用到的功能或控制元件或自訂控制項  特性就是編譯後可由不同方案或專案  甚至是不同設計語言 使用

    我感覺  類別算是比較簡單的單位(關起門來自己用因為可能只有自己看的懂) 當類別符合元件互動的標準時(統一標準化之後大家都看的懂) 類別就是元件了  而元件加上使用者介面(IDE操作起來有屬性介面設定更為人性化) 就是 控制項了(簡單的說啦)

     

    所以 工具箱裡面一堆 控制項 其實都是 從類別開始建構而來的   其實這也就是  微軟大力推動.Net和Framework了原因 統一標準化讓所有平台皆可使用(也是物件導向的應用 加上了以前c語言開發者引以為傲的繼承多載多型等等概念)

     

    這樣說應該你就可以了解何時需要運作什麼方式來寫(殺雞不需用牛刀 呵呵)

     

    以後 單純的使用控制項建構程式的人 只能稱為 應用者  只有建構軟體ic的人才能算是設計者  開發者

    這是我學一個多月vb2005的看法 (不過vb學(混)了10多年從1.0開始)觀念有錯的話 但盼指證  給我指導QQ

     

    對了 以後不同的主題 請另外發文 這樣方便其他網友查詢

    2007年5月11日 下午 12:04
  • 剛剛看了一下  我在補充一下

    Class  Module  和Form Class 三者的用法不同

    通常 設計一個介面所有有關這個介面的事件程序 和 變數宣告 都會寫在Form Class 除非是公用副程序或公用變數(其他的Form也用的到)

    如果是公用的函式 公用副程序 公用變數  通常會寫在Module裡面 (可能裡面除了包含公用的之外還有Module自己的私用變數副程序函式)也就是 其他畫面都用不到但可能只是模組內的副程序互相呼叫使用的這就是模組私用

    Class 通常用在自定類別 或是擴充屬性、多載等等時才要寫在那個裡面

    這是我個人的習慣  應該也是規則吧  遵守規則寫出來的程式 大家才能看的懂  不然  有一天程式移轉或賣出的時候  就急到滿頭苞了 .....

    2007年5月11日 下午 05:40
  • 多謝 濛濛 大大的詳細說明~~

    小弟只算是個應用者,在開發時頂多是應用控制項、sub、function、及模組來達成目標。

    從VB6轉到VB2005遇到很多困難但也遇到很多的驚喜,實際使用後更發覺程式設計的美妙。

    再次的謝謝您寶貴的經驗~~~

    2007年5月21日 上午 01:08