È«¾Ö½Ó¿Úº¯Êý˵Ã÷£º
UINT zdsw_excuteUICommand(
UICOMMANDPROC pfnUICMDProc, //Óû§¶¨Ò廨µ÷º¯ÊýÖ¸Õë LPVOID pParam );
²Î Êý£º
pfnUICMDProc¡ª¡ªÓû§×Ô¶¨Ò庯ÊýÖ¸Õ룬Óû§±ØÐë°Ñ´´½¨¡¢Ð޸ġ¢ÏÔʾ½çÃæÔªËØµÄ´úÂëдÔڸú¯ÊýÄÚ¡£
pParam¡ª¡ªÓû§×Ô¶¨Òå²ÎÊý£¬¸Ã²ÎÊýÓû§¿ÉÓÉÓû§¸ù¾ÝÐèÒª×ÔÓÉ´«Öµ£¬×îÖÕ»á×÷ΪָÕëpfnUICMDProcËùÖ¸ÏòµÄº¯ÊýµÄÊäÈë²ÎÊý¡£ ·µ»ØÖµ£º
Èç¹ûpfnUICMDProcΪ¿Õ»òµ÷Óùý³Ì·¢Éú´íÎ󣬷µ»ØÖµÎª-1£¬·ñÔò·µ»ØpfnUICMDProcËùÖ¸Ïò»Øµ÷º¯ÊýÖ´ÐеĽá¹û״̬¡£
//Óû§×Ô¶¨Òå²ÎÊý
»Øµ÷º¯Êý¶¨Òå˵Ã÷£º
¿ÉÍ£¿¿Ãæ°å¶¨ÒåµÄ»Øµ÷º¯Êý¸ñʽÈçÏ£º
UINT CallBackFunc(LPVOID pParam) {
//To Do: }
return -1;
´úÂëʾÀý£º
// ¶¨Òå¿ÉÍ£¿¿´°¿Ú¹¦ÄÜÀ࣬²¢ÊµÏÖ class CSCRMenu : public CDialogBar {
DECLARE_DYNAMIC(CSCRMenu)
public:
CSCRMenu();
virtual ~CSCRMenu();
virtual void OnUpdateCmdUI(CFrameWnd* pTarget, BOOL bDisableIfNoHndler);
public:
protected:
CComboBox m_LayerComboBox; BOOL ScreenMenu();
CListCtrl m_EntityInfoList;
protected:
void InitDCEditButton(); void InitLayerComboBox();
protected:
DECLARE_MESSAGE_MAP()
public: };
//¶¨ÒåÓû§×Ô¶¨Ò廨µ÷º¯Êý£º
UINT CreateScreenMenu(LPVOID pParam) { }
// ת½Ó¹¦Äܺ¯Êýµ½ZWCADÖ÷UIÏß³ÌÉÏÖ´ÐÐ void CreatSCRMenu() { }
zdsw_executeUICommand(CreateScreenMenu, &m_SCRMenu); if(pParam) { }
return -1;
return ((CSCRMenu*)pParam)->ScreenMenu(); afx_msg void OnBtnMessagebox(); afx_msg void OnBtnLine();
afx_msg LRESULT OnInitDialog(WPARAM wParam, LPARAM lParam); afx_msg void OnBtnDCEdit(); afx_msg void OnBtnGetObjInfo(); afx_msg void OnBtnCloseupLayer();
×¢ÒâÊÂÏ
1£©´´½¨½çÃæµÄËùÓÐÔªËØ±ØÐëÔÚÌØ¶¨º¯ÊýÄÚʵÏÖ£¬²¢ÒԸú¯ÊýÖ¸Õë×÷ΪÊäÈë²ÎÊý£¬Í¨¹ýʹÓÃÈ«¾Ö½Ó¿Úº¯Êýzdsw_ExecuteUICommandµ÷ÓÃÀ´´ïµ½¹¦ÄÜÉϵÄʵÏÖ£¬ÇмDz»ÄÜÖ±½ÓÔÚZRXÃüÁîÀï´´½¨Óû§½çÃæ£»
2£©ÔÚÓû§ÏûÏ¢ÏìÓ¦´úÂëÀÐèÒªÐÞ¸ÄͼֽÊý¾ÝµÄ²Ù×÷ʱ£¬±ØÐëµ÷ÓÃzcedPostCommand·¢ËÍZRXÃüÁîÃûÒÔ´¥·¢ZRXÃüÁÊýµÄ·½Ê½½øÐС£ÓÉÓÚ´Ó·¢ËÍZRXÃüÁîÃûµ½Ö´ÐÐZRXÃüÁî²»ÊǼ´Ê±µÄ£¬ËùÒÔµ÷ÓÃzcedPostCommandÖ®ºó²»Ò˱àдÆäËüÂß¼´úÂë¡£
3£© µ÷Óô˽ӿڴ´½¨Óû§½çÃæµÄ¶þ´Î¿ª·¢Ó¦ÓóÌÐò±ØÐëΪMFCÀ©Õ¹DLL£¬·ñÔòÎÞ·¨Õý³£´´
½¨Óû§½çÃæ¡£
È«¾Öº¯ÊýÓ¦ÓÃ
ZRX³ýÁËÌṩÁËһЩӦÓù¦ÄÜÀà½Ó¿Ú£¬Í¬Ê±Ò²ÌṩÁ˸÷ÖÖÓ¦ÓõÄÈ«¾Öº¯Êý£¬ÏÞÓÚÕ½ڣ¬²»ÔÚ´ËÒ»Ò»²ûÊö£¬ÏêϸÇë²Î¼û ¡¶¸½Â¼A£º¡·¡£
ZZRÒÆÖ² RXÖ²Ö¸XÒÆÖ¸ÄÏÄÏ ±¾Ö¸ÄÏÖ÷Òª½²Êö£¬ÈçºÎ´ÓÔÔÚAutoCADÉÏÔËÐеÄObjectARXµÄÓ¦ÓóÌÐòÒÆÖ²µ½ZWCADÉÏ£¬²¢ÇÒÄܹ»Õý³£¡¢ÕýÈ·µØÔËÐС£ÔÚÇ°Ãæ¡¶ZRX½éÉÜ¡·Õ½ÚÀÎÒÃÇÒѾ½éÉÜÁËZRXÔÚ´úÂëÉÏÒѾ×÷µ½Äܹ»ºÜºÃµØ¼æÈÝARX´úÂ룬Òò´ËÔÚARX³ÌÐòÔÚÏòZRXÒÆÖ²Ê±£¬¼¸ºõ²»ÓÃÐÞ¸ÄÓû§´úÂ룬ͨ¹ýÐ޸Ť³ÌÅäÖã¬ÖØÐ±àÒëÁ´½Ó£¬±ã¿ÉÒÔת½Óµ½ZWCADÉÏÀ´ÔËÐУ¬ÒÔÏÂÊÇÕë¶Ô²»Í¬°æ±¾¼äÒÆÖ²µÄ²½Öè¡£
´ÓObjectARX 2006ÒÆÖ²µ½ZRX
ÒÆÖ²µÄ²½Ö裺
1£©Ê×ÏÈÓÃVisual Studio 2008´ò¿ª¸Ã¹¤³Ì£¬°´ÌáʾÐÅÏ¢Ìáʾ½«Ô¹¤³ÌÉý¼¶Îªvc9¹¤³Ì¡£ 2£©ÔÚ¹¤³ÌÊôÐÔ¶Ô»°¿òµÄC/C++-->General(³£¹æ)-->Additional(¸½¼Ó°üº¬Ä¿Â¼)ÖУ¬ÐÞ¸ÄÍ·Îļþ°üº¬Â·¾¶ÎªZRXSDK\\arxportµÄ¶ÔÓ¦µÄĿ¼£¬É¾µôÔÏȵÄÍ·Îļþ°üº¬Â·¾¶¡£ÀýÈçÍ·Îļþ°üº¬Â·¾¶Îª¡°C:\\ZRXSDK\\ arxport¡±¡£
3£© ÔÚ¹¤³ÌÊôÐÔ¶Ô»°¿òµÄLinker(Á´½ÓÆ÷)-->Input(ÊäÈë)-->Additional Dependencies(¸½¼ÓÒÀÀµ