From 9b3b2eb20b09e13da837a28f16e552ba70a090c4 Mon Sep 17 00:00:00 2001 From: LiFan <2308045698@qq.com> Date: 星期四, 24 四月 2025 14:48:21 +0800 Subject: [PATCH] update --- jrj/project/printview/Maint.Template.PrintEx.cpp | 205 +++++++++++++++++++++++++------------------------- 1 files changed, 103 insertions(+), 102 deletions(-) diff --git a/jrj/project/printview/Maint.Template.PrintEx.cpp b/jrj/project/printview/Maint.Template.PrintEx.cpp index d96d72b..0092f7d 100644 --- a/jrj/project/printview/Maint.Template.PrintEx.cpp +++ b/jrj/project/printview/Maint.Template.PrintEx.cpp @@ -2,125 +2,126 @@ #include <xcontrol/xtreeview.hpp> #include <xcontrol/xdwgrid.hpp> #include <xcontrol/xlayersheet.hpp> +#include <xcontrol/xcell.hpp> #include "vbusiness/vframe/maint.vframe.vbusiness.hpp" #include "viewobject/view.base.hpp" using xml = KXMLDOMDocument; - -class __declspec(dllexport) MaintTemplatePrintWin : public xframe +class __declspec(dllexport) MaintTemplatePrintWin : public xframe +{ +public: + xcell cell; + xnode m_agentNode; //Agent Condition + xstring args; +public: + MaintTemplatePrintWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} +public: + static MaintTemplatePrintWin* CreateInstance(void* implPtr, void* hWnd) { - public: - xcell cell; - xnode m_agentNode; //Agent Condition - xstring args; - public: - MaintTemplatePrintWin(void* implPtr, HWND hWnd) :xframe(implPtr, hWnd) {} - public: - static MaintTemplatePrintWin* CreateInstance(void* implPtr, void* hWnd) + MaintTemplatePrintWin* pWin = new MaintTemplatePrintWin(implPtr, (HWND)hWnd); + return pWin; + } + int SetAgent() + { + xstring xfNodeAgentArea = L"agentarea"; + xnode anode = GetAgentNode(xfNodeAgentArea); + if (m_agentNode) { - MaintTemplatePrintWin* pWin = new MaintTemplatePrintWin(implPtr, (HWND)hWnd); - return pWin; + SetAgentNode(anode, m_agentNode); } - int SetAgent() + else { - xstring xfNodeAgentArea = L"agentarea"; - xnode anode = GetAgentNode(xfNodeAgentArea); - if(m_agentNode) + KXMLDOMElement xframeElement = GetElement(); + KXMLDOMElement agent = xframeElement.selectSingleNode(L"agent/" + xfNodeAgentArea + L"[1]/*"); + if (agent) { - SetAgentNode (anode,m_agentNode); + xstring s = agent.xml(); + m_agentNode = SetAgentNode(anode, s); } - else - { - KXMLDOMElement xframeElement = GetElement(); - KXMLDOMElement agent = xframeElement.selectSingleNode(L"agent/"+xfNodeAgentArea+L"[1]/*"); - if(agent) - { - xstring s = agent.xml(); - m_agentNode = SetAgentNode (anode,s); - } - } - return 1; } + return 1; + } - //焦点激活处理函数 - int OnSetFocus(TEvent* evt, LPARAM p) - { - //重置工具条 - SetAgent(); - return 1; - } -} + //焦点激活处理函数 + int OnSetFocus(TEvent* evt, LPARAM p) + { + //重置工具条 + SetAgent(); + return 1; + } - int SendCtrlCmd(xcontrol xc, xstring cmd) - { - win32::SendMessage(xc.GetId(),0x401,cmd,0); - return 1; - } + int SendCtrlCmd(xcontrol xc, xstring cmd) + { + SendMessage(xc.GetHWND(), 0x401, (WPARAM)cmd.c_str(), 0); + return 1; + } - //命令发布函数 - int OnCmdDispatch(xstring comdid) + //命令发布函数 + int OnCmdDispatch(xstring comdid) + { + if (comdid.left(3) == L"IK_") { - if(comdid.left(3) == L"IK_") - { - xstring cmd = comdid.mid(3, comdid.length()); - SendCtrlCmd(GetControl(L"cell"),cmd); - return 1; - } - else if(comdid==L"xmFileOpen") - { - cell.OpenFile(); - cell.Redraw(); - return 1; - } - else if(comdid==L"xmFileSave") - { - cell.SaveFile(); - return 1; - } - else if(comdid==L"xmFileSaveAs") - { - cell.SaveFileAs(); - return 1; - } - return 0; - } - - //命令处理事件 - int OnXCommand(TEvent* evt, LPARAM p) - { - return OnCmdDispatch(evt->xcommand.pStrID); - } - - int OnAttachEvent() - { - //绑定工具条点击事件 - AttachEvent(L"WM_XCOMMAND", (FEvent)&MaintTemplatePrintWin::OnXCommand); - //获取焦点事件,用于重置工具条 - AttachEvent(L"WM_SETFOCUS", (FEvent)&MaintTemplatePrintWin::OnSetFocus); - } - - int onload() - { - cell = GetControl(L"cell"); - SetAgent(); - - OnAttachEvent(); - - if(GetWinParam()) - { - args = GetParamString(); - cell.openUrl(L"/sale/data/SysPrintTemplate/getdevxsl",args); - } - else - args =L""; - + xstring cmd = comdid.mid(3, comdid.length()); + + SendCtrlCmd(cell.GetHWND(), cmd); return 1; } - - int onloaded() + else if (comdid == L"xmFileOpen") { - + cell.OpenFile(); + cell.Redraw(); return 1; - } - \ No newline at end of file + } + else if (comdid == L"xmFileSave") + { + cell.SaveFile(); + return 1; + } + else if (comdid == L"xmFileSaveAs") + { + cell.SaveFileAs(); + return 1; + } + return 0; + } + + //命令处理事件 + int OnXCommand(TEvent* evt, LPARAM p) + { + return OnCmdDispatch(evt->xcommand.pStrID); + } + + int OnAttachEvent() + { + //绑定工具条点击事件 + AttachEvent(L"WM_XCOMMAND", (FEvent)&MaintTemplatePrintWin::OnXCommand); + //获取焦点事件,用于重置工具条 + AttachEvent(L"WM_SETFOCUS", (FEvent)&MaintTemplatePrintWin::OnSetFocus); + return 1; + } + + int onload() + { + cell = GetControl(L"cell"); + SetAgent(); + + OnAttachEvent(); + + if (GetWinParam()) + { + args = GetParamString(); + cell.openUrl(L"/sale/data/SysPrintTemplate/getdevxsl", args); + } + else + args = L""; + + return 1; + } + + int onloaded() + { + + return 1; + } +}; \ No newline at end of file -- Gitblit v1.9.3