Windows中实现嵌入窗口,嵌入内容显示标题栏,如何去掉最大最小关闭按钮
查看Java的官方样例找到是ClassFactory.createApplication这个,去jar包里面查看是调用的COM4J.createInstance这个函数,然后找到runtime.jar包的这个CreateInstanceTask这个类然后里面的call函数里面顺着各种初始化找到initWpsWindow这个函数然后发现,是通过
WpsArgs args = (WpsArgs)WpsArgs.ARGS_MAP.get(app);
WinDef.HWND hMainWnd = findWindow(wndClass);
WinDef.HWND hParent = new WinDef.HWND(new Pointer(args.getWinid()));
User32.INSTANCE.SetParent(hMainWnd, hParent);
User32.INSTANCE.MoveWindow(hMainWnd, 0, 0, args.getWidth(), args.getHeight(), true);这个实现的嵌入
我用qt在windows中嵌入
hr = CLSIDFromProgID(L"KWPS.Application", &clsid);
hr = CoCreateInstance(clsid, NULL, CLSCTX_LOCAL_SERVER,IID__Application,(void**)&application);
HWND OpusApp =FindWindow(L"OpusApp",nullptr);
SetParent(hWnd, (HWND)this->winId());
MoveWindow(hWnd, 0, 0, this->width(), this->height(), true);
拿到wps接口,在拿到文档接口,在拿到窗口句柄,然后放入外面的QWidget做的qt的子窗口结果发现,里面有最大化,最小化和关闭按钮,我看java的样例里面没有这三个按钮有什么隐藏函数么
其实还有一个阴影窗口,这个可以隐藏掉,但是我感觉方向错了,因为标题栏可以在窗口里面拖动