jjzjj

MoveWindow

全部标签

c# - SetWindowPos/MoveWindow 持续存在问题

我正在使用SetWindowPos和MoveWindow来调整窗口大小和居中。它工作正常,但在WindowsMediaPlayer或控制面板等多个窗口上,当您关闭窗口并再次打开时,不会反射(reflect)新的调整大小/移动。当我手动调整大小时,更改会在我下次打开窗口时反射(reflect)出来。即使我调用UpdateWindow,更改也不会反射(reflect)出来。是否需要发送窗口以保存更改?RedrawWindow有帮助吗?谢谢? 最佳答案 您应该使用GetWindowPlacement和SetWindowPlacement函

c++ -::MoveWindow 的问题 - 留下空白

我非常渴望解决这个非常烦人的问题:(我试图在父窗口上显示一个子窗口。有时需要调整窗口大小。但出于某种原因,当我使用MoveWindow函数时,它会在父窗口的顶部留下空白区域。我想在这里展示一张图片,但我不能张贴图片。代码示例如下:HWNDhwnd//Comesfromexternalfunction.WasdefinedasWS_CHILDpreviouslyHWNDhwndParent=::GetParent(hwnd);RECTparentRect={0,0,0,0};RECTchildRect={0,0,0,0};::GetClientRect(hwndParent,&paren

c# - 如何在 C# 中平铺两个程序窗口?

我想在C#中水平平铺两个Windows程序。它用于使用Chrome查看2d图像的数据查看程序,Unity3d用于3d和导航。例如,我可以在Windows任务管理器中选择两个程序,上下文中有一个选项可以平铺它们。.Net框架中是否有用于平铺不同程序窗口的句柄? 最佳答案 可能最好的方法是使用MoveWindow(其中hWnd是要移动的窗口):[DllImport("user32.dll",SetLastError=true)]internalstaticexternboolMoveWindow(IntPtrhWnd,intX,intY

c# - 移动外部程序的位置和改变大小

所谓外部程序,是指非本人开发的程序。我有2个程序需要一起启动,其中1个是我开发的程序,另一个是WindowMediaPlayer(仅作为示例)。这些程序将放置在没有用户交互的静态位置,因此我需要配置它们的高度宽度和x/y坐标。我自己的程序没有问题,但对于外部程序,我是否能够使用窗口消息来更改它们的大小和位置。我以前从未使用过窗口消息,但我在某处阅读了有关sendMessage()的内容,但我不确定移动和调整大小的命令。我的程序是用C#写的,我希望能做这样的事情 最佳答案 您可以使用MoveWindowAPI[DllImport("u

c# - 如何更改另一个程序的窗口大小?

如何从我的C#程序中更改另一个程序(比方说Skype的)窗口的大小? 最佳答案 您可以使用MoveWindow(其中hWnd是您要移动的窗口):[DllImport("user32.dll",SetLastError=true)]internalstaticexternboolMoveWindow(IntPtrhWnd,intX,intY,intnWidth,intnHeight,boolbRepaint);MoveWindow(ApplicationHandle,600,600,600,600,true);如果不知道窗口指针,可以

c++ - DeferWindowPos 奇怪的行为

所有ActiveX控件都会出现这种情况。如果我使用DeferWindowPos重新定位ActiveX控件HDWPhdwp=BeginDeferWindowPos(1);DeferWindowPos(hdwp,m_pActiveX->GetSafeHwnd(),NULL,left,top,width,height,SWP_NOZORDER);EndDeferWindowPos(hdwp);它去那里但一旦您点击控件内的任何地方,它就会移动/调整到它的旧矩形。如果我改用MoveWindowm_pActiveX->MoveWindow(left,top,width,height);这不会发生。

c++ - 使用 MoveWindow 或 SetWindowPos 时,编辑控件/组合框的窗口大小未正确调整

简介及相关信息:我正在尝试使用可编辑项和子项实现ListView控件。项目和子项目应该具有编辑控件、复选框或组合框,而不是常规的ListView外观。我正在使用原始WinAPI和C++。我的目标是从WindowsXP开始。我为解决问题所做的努力:在这里和Internet上进行研究后,我只能在MFC中找到示例。它们都使用LVN_BEGINLABELEDIT技术来实现此行为。不幸的是,我并不完全理解这个概念,所以我决定从头开始(我认为这也是提高编程技能的最佳方法)。我的概念:我已决定为ListView捕获NM_DBLCLK,并使用ListView_GetItemRect或ListView_

c++ - C++ OpenCV 2.3 中缺少 MoveWindow()

我正在使用OpenCV2.3的C++版本,并且正在努力完成一项基本任务。我想做的是创建一个窗口并将其移动到屏幕上的特定位置,例如:cv::namedWindow("MyWindow",1);cv::MoveWindow("MyWindow",10,10);但是,MoveWindow()函数似乎不可用。从OpenCV2.3文档(link)来看,似乎有C和Python实现,但没有C++。这是否意味着有更好的方法来做到这一点?来自文档的相关部分:MoveWindow==========Moveswindowtothespecifiedposition---------------------