我能從 LabWindows/CVI 的 DLL 中修改人機介面嗎?主要軟體: LabWindows/CVI Development Systems>>Full Development System主要軟體版本: 8.0 主要軟體修正版本: N/A 次要軟體: N/A
問題: 我程式中有使用函式去修改了我人機介面(*.uir)的屬性,例如textbox的值。我想要製作一個包含這個函式的 DLL,但是我擔心不能在 DLL 內部修改人機介面。 解答: 為了修改人機介面,函式需要連結當前記憶體中載入的面板。這需要面板的參考值(reference)(例如:控制碼)以做為參數傳遞到函式。 例如,假定 DLL 包含一個稱為 ModifyUI 的函式,該函式修改了人機介面的一些屬性。函式原型應為: void __stdcall ModifyUI(int panelHandle, int controlID) panelHandle 參數指定到特定面板的連結,而該面板位於記憶體中。您從 LoadPanel() 或者 LoadPanelEx() 函式獲得連結。 controlID 參數會參考人機介面控制項的 ID。參閱知識庫文章 What are Control IDs in LabWindows/CVI? 以瞭解更多資訊。 呼叫這個函式的函式如下: ModifyUI(panelHandle, PANEL_TEXTBOX) 其中 PANEL_TEXTBOX 表示textbox control的 ID。當使用人機介面函式時,這兩個參數都需要。 相關連結: KnowledgeBase 3PSEM76S: What are Control IDs in LabWindows/CVI? Developer Zone Tutorial: FAQ: Using Dynamic Link Libraries with LabWindows/CVI KnowledgeBase DIRECT-3U6SEL: How Do I Create and Debug a DLL in CVI 5.0? 附加檔案:
報告日期: 05/22/2002 最後更新: 12/07/2007 文件偏號: 2LLAG28R |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
