VC动态设置按钮位置? 已建有一个按钮,在鼠标移动的过程中,也让这个按钮移动,该鼠标的名称为:IDC_BUTTON用SetWindowPos怎么设置 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 获取鼠标位置:GetCursorPos(),要不要做坐标转换不清楚,lz自己试试 [ClientToScreen()或者ScreenToClient()] BOOL SetWindowPos ( HWND hWnd, //窗口句柄,要移动的窗口句柄 GetDlgItem(IDC_BUTTON)->GetSaftHwnd() HWND hWndInsertAfter, //排列顺序的句柄,主要是移动后的窗口层次,顶层、底层之类的 int X, //水平坐标,这四个是新坐标和新的高度、宽度 int Y, //垂直坐标 int cx, //宽 int cy, //高 UINT uFlags //窗口定位标识,显示不显示,激活不激活,是否改变尺寸等设置。 ); 具体的值可以查msdn 可以用BOOL MoveWindow( HWND hWnd, int X, int Y, int nWidth, int nHeight, BOOL bRepaint);这个相对来说简单点 响应WM_MOUSEMOVE消息void CxxxDlg::OnMouseMove(UINT, CPoint point){ GetDlgItem(IDC_BUTTON)->MoveWindow(point.x, point.y, 60, 20);} 我用:GetWindowRect(&rect)获取按钮的位置时总是出错,编译是通过了,但是移动鼠标时程序出错了,强行关闭.GetWindowRect(&rect)用这个的目的是获取按钮的大小. 在SetWindowPos时,nflags加上SWP_NOSIZE 保持当前大小(cx和cy会被忽略),就不用知道按钮的大小了。 程序编译组建都没有问题,执行到一半,出现这个问题,怎么解决?? SetBkColor在视类中的OnEraseBkgnd()怎么不起作用啊? 如何提取字形的坐标 关于标题栏的问题 数据压缩的目的是什么? 编译错误:error LNK2001: unresolved external symbol _CINRun 如何获取COMBOBOX列表里的字符串???? 一个有关当前路径的问题! CserialPort数据接收错误问题 duilib如何实现下面的效果 急急急 用CHtmlView时怎样更改JS中alert的标题? delete m_pCtrlCont
BOOL SetWindowPos
(
HWND hWnd, //窗口句柄,要移动的窗口句柄 GetDlgItem(IDC_BUTTON)->GetSaftHwnd()
HWND hWndInsertAfter, //排列顺序的句柄,主要是移动后的窗口层次,顶层、底层之类的
int X, //水平坐标,这四个是新坐标和新的高度、宽度
int Y, //垂直坐标
int cx, //宽
int cy, //高
UINT uFlags //窗口定位标识,显示不显示,激活不激活,是否改变尺寸等设置。
);
具体的值可以查msdn
BOOL MoveWindow( HWND hWnd,
int X,
int Y,
int nWidth,
int nHeight,
BOOL bRepaint
);这个相对来说简单点
{
GetDlgItem(IDC_BUTTON)->MoveWindow(point.x, point.y, 60, 20);
}