From 7ed0554070bccbac404a1fd4f7de548d06133183 Mon Sep 17 00:00:00 2001 From: xj qian <qianxj15@sina.com> Date: 星期二, 02 七月 2024 15:23:45 +0800 Subject: [PATCH] this is update --- jrj/project/vindexform.cpp | 34 ++++++++++++++++++---------------- jrj/project/vindexmenu.cpp | 4 ++-- jrj/xframe/win32/win.hpp | 4 +++- 3 files changed, 23 insertions(+), 19 deletions(-) diff --git a/jrj/project/vindexform.cpp b/jrj/project/vindexform.cpp index b110535..72ce110 100644 --- a/jrj/project/vindexform.cpp +++ b/jrj/project/vindexform.cpp @@ -13,7 +13,7 @@ using xml = KXMLDOMDocument; -class __declspec(dllexport) vindexform: public xframe +class __declspec(dllexport) vindexform: public xwin { public: string m_Assignment; @@ -36,7 +36,7 @@ int menuShow; HWND m_npHwnd2; //openwindow - int m_startwin; + HWND m_startwin; public: vindexform(void* implPtr,HWND hWnd):xwin(implPtr,hWnd){} @@ -99,7 +99,7 @@ alert(L"clicked"); return 1; } - int OnMenu(HWND hMenu) + int OnMenu(xstring hMenu) { if (!hMenu) { @@ -129,7 +129,7 @@ } else { - m_hMenu = hMenu; + m_hMenu = (HWND)hMenu.toInt64(); } xrect xr; @@ -322,10 +322,10 @@ else AppendMenu(m, MF_STRING, i + 1, name); } - xrect xr; + RECT xr; xpoint pt; GetCursorPos(pt); - int res = TrackPopupMenu(m, TPM_RIGHTBUTTON | TPM_RETURNCMD, pt.x, pt.y, 0, GetHWND(), xr); + int res = TrackPopupMenu(m, TPM_RIGHTBUTTON | TPM_RETURNCMD, pt.x, pt.y, 0, GetHWND(), &xr); if (res == 0) return 0; KXMLDOMElement ele = li.item(res - 1); xstring sInfoEx = ele.selectSingleNode(L"AssignmentID").text(); @@ -361,10 +361,10 @@ else AppendMenu(m, MF_STRING, i + 1, str); } - xrect xr; + RECT xr; xpoint pt; GetCursorPos(pt); - int res = TrackPopupMenu(m, TPM_RIGHTBUTTON | TPM_RETURNCMD, pt.x, pt.y, 0, GetHWND(), xr); + int res = TrackPopupMenu(m, TPM_RIGHTBUTTON | TPM_RETURNCMD, pt.x, pt.y, 0, GetHWND(), &xr); if (res == 0) return 0; int nSheet = mainsheet.GetSheetIndex(); if (nSheet == (res - 1)) return 0; @@ -400,6 +400,8 @@ } return 1; } + +#if 0 int OnOpen(xstring pa) { //xwin::SendMessage(m_npHwnd2, 0x401, pa, 0); @@ -411,7 +413,6 @@ }*/ xaserverarg arg ; - xstring isnew = arg.GetArgString(L"_isNewModule"); xstring vx = arg.GetArgString(L"_ModuelPage"); if (isnew == L"Y") @@ -422,9 +423,10 @@ openUrl(vx, p); return 1; } - OpenWindow(L"dev:xpage[vindexforold.vx]", p); + //OpenWindow(L"dev:xpage[vindexforold.vx]", p); return 1; } + int OnOpenForOld(xstring pa) { m_npHwnd2 = pa.toInt(); @@ -444,7 +446,7 @@ ShowWindow(m_npHwnd2, SW_MAXIMIZE); return 1; } - +#endif int OnHelp() { OpenWindow(L"dev:xpage[trade.help3.vx]"); @@ -463,11 +465,11 @@ else if (comdid.find(L"menuid:", 0) >= 0) OnMenu(comdid.mid(comdid.find(L":", 0) + 1, comdid.length())); else if (comdid.find(L"menuAgent:", 0) >= 0) OnMenuAgent(comdid.mid(comdid.find(L":", 0) + 1, comdid.length())); else if (comdid.find(L"changesheet:", 0) >= 0) OnChangeSheet(comdid.mid(comdid.find(L":", 0) + 1, comdid.length())); - else if (comdid.find(L"openforoldid:", 0) >= 0) OnOpenForOld(comdid.mid(comdid.find(L":", 0) + 1, comdid.length())); - else if (comdid.find(L"open:", 0) >= 0) OnOpen(comdid.mid(comdid.find(L":", 0) + 1, comdid.length())); + //else if (comdid.find(L"openforoldid:", 0) >= 0) OnOpenForOld(comdid.mid(comdid.find(L":", 0) + 1, comdid.length())); + //else if (comdid.find(L"open:", 0) >= 0) OnOpen(comdid.mid(comdid.find(L":", 0) + 1, comdid.length())); else if (comdid == L"xmRefreshTask") { - SendMessage(m_startwin, 0x401, comdid, 0); + SendMessage(m_startwin, 0x401, (WPARAM)comdid.c_str(), 0); return 1; } @@ -519,8 +521,8 @@ if (cursheet != mainsheet.GetSheetIndex()) { - int hPicture = FindWindowEx(0, 0, L"XFrameWndClass", L"__ProductPicture"); - if (hPicture > 0) + HWND hPicture = FindWindowEx(0, 0, L"XFrameWndClass", L"__ProductPicture"); + if (hPicture) { int WM_CLOSE = 0x0010; PostMessage(hPicture, WM_CLOSE, 0, 0); diff --git a/jrj/project/vindexmenu.cpp b/jrj/project/vindexmenu.cpp index 0a54c11..612ff34 100644 --- a/jrj/project/vindexmenu.cpp +++ b/jrj/project/vindexmenu.cpp @@ -187,10 +187,10 @@ int TPM_RIGHTBUTTON = 0x0002; int TPM_RETURNCMD = 0x0100; AppendMenuW(m,MF_STRING, 1, str); - xrect xr = { 0,0,0,0 }; + RECT xr = { 0,0,0,0 }; xpoint pt; GetCursorPos(pt); - return TrackPopupMenu (m, TPM_RIGHTBUTTON | TPM_RETURNCMD, pt.x, pt.y, 0, this->GetHandle(), xr); + return TrackPopupMenu (m, TPM_RIGHTBUTTON | TPM_RETURNCMD, pt.x, pt.y, 0, this->GetHandle(), &xr); } int OnRClicked(TEvent* evt,int p) diff --git a/jrj/xframe/win32/win.hpp b/jrj/xframe/win32/win.hpp index 46f784c..1fbfcee 100644 --- a/jrj/xframe/win32/win.hpp +++ b/jrj/xframe/win32/win.hpp @@ -86,7 +86,7 @@ int WINAPI DestroyWindow(HWND hWnd) ;//native from "user32.dll" alias "DestroyWindow"; HMENU WINAPI CreatePopupMenu() ;//native from "user32.dll" alias "CreatePopupMenu"; bool WINAPI AppendMenuW(HMENU hMenu, int uFlags, int uIDNewltem, string lpNewltem) ;//native from "user32.dll" alias "AppendMenuW"; - bool WINAPI TrackPopupMenu(HMENU hMenu, int uFlags, int x, int y, int nReserved, HWND hWnd, xrect prcRect) ;//native from "user32.dll" alias "TrackPopupMenu"; + bool WINAPI TrackPopupMenu(HMENU hMenu, int uFlags, int x, int y, int nReserved, HWND hWnd, LPRECT prcRect) ;//native from "user32.dll" alias "TrackPopupMenu"; //int WINAPI CallWindowProc(int OldWProc,HWND hWnd,int uMsg,param wParam,param lParam) ;//native from "user32.dll" alias "CallWindowProcW"; int WINAPI InvalidateRect(HWND hWnd,xrect * lpRect, bool bErase) ;//native from "user32.dll" alias "InvalidateRect"; int WINAPI Sleep(int dwMilliseconds) ;//native from "kernel32.dll" alias "Sleep"; @@ -120,6 +120,8 @@ #define PathRemoveFileSpec PathRemoveFileSpecW #define SetWindowText SetWindowTextW #define GetWindowText GetWindowTextW +#define AppendMenu AppendMenuW +#define FindWindowEx FindWindowExW #endif #if 0 -- Gitblit v1.9.3