包含mfc按钮位置与源码不一致的词条

hacker|
118

文章目录:

MFC做界面的时候有很多按钮和编辑框,大小不一,宽度不同,想把一些控件以中线对齐,有方法实现吗?谢谢~~

呃~这个问题,你在编辑控件的时候,在左下角直接有几个按钮,操作这几个按钮就可以进行操作了~左下角的地方~

在基于对话框的mfc中(本来不是全屏的)点了最大化后,按钮 图片的位置都变了。怎么解决?

OnSize...具体的可以调整

void CtestDlg::OnSize(UINT nType, int cx, int cy)

{

CDialog::OnSize(nType, cx, cy);

// TODO: 在此处添加消息处理程序代码

static RECT LastWindowRect = {0, 0, 0, 0};//用来保存窗口上一次的大小

CWnd *hWin;//构造一个句柄

int ux = cx - LastWindowRect.right;

//求出窗口的水平变化量

int uy = cy - LastWindowRect.bottom;

//求出窗口的竖直变化量

if((hWin = GetDlgItem(IDC_PPP)) != NULL) //IDC_LIST1为控件的ID号

{

RECT rect;

hWin-GetWindowRect(rect);//获得控件的大小

ScreenToClient(rect);//设备到客户

rect.right += ux;//

rect.bottom += uy;

hWin-MoveWindow(rect);//改变控件大小

}

LastWindowRect.right = cx;

LastWindowRect.bottom = cy;

}

我的mfc(vc++6.0)打开后操作界面不知道怎么不是正常尺寸并且位置也非正常位置

设置一下尺寸

MoveWindow,SetWindowPos这两个函数都行。用法msnd上有。

函数 SetWindowPos 的用法

Declare Function SetWindowPos Lib "user32" Alias "SetWindowPos" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

这个函数能为窗口指定一个新位置和状态。它也可改变窗口在内部窗口列表中的位置。

返回值:Long,非零表示成功,零表示失败

MoveWindow()就是移动窗口位置(也可用来改变大小)。用法如下:

BOOL MoveWindow(

HWND hWnd, // handle to window

int X, // horizontal position

int Y, // vertical position

int nWidth, // width

int nHeight, // height

BOOL bRepaint // repaint option

);

hWnd是你要移动的窗口的句柄;

X,Y是移动后窗口左上角的横纵坐标;

nWidth,nHeight是移动后窗口的宽度和高度;

bRepain是表示移动后的窗口是否需要重画,如果为真则在移动窗口后会向窗口过程函数发送一条WM_PAINT消息重绘窗口。

MFC双击控件按钮不能转到代码处-向高手求助-网上查不到有效解决方法

因为你这个对话框没用实体化。

先双击对话框空白处,创建对话框类,有了对话框类的代码,才能创建控件响应代码。

MFC,创建按钮,双击之后的函数名称不和button的名称一致,这个怎么办?

鼠标右键点击按钮,点击属性,修改它的ID,然后就可以了,一般如果ID是button1,函数的名字一般是OnBnClickedbutton1()

4条大神的评论

  • avatar
    访客 2022-07-02 上午 03:51:49

    Function SetWindowPos Lib "user32" Alias "SetWindowPos" (ByVal hwnd As Long, ByVal hWndInsertAfter A

  • avatar
    访客 2022-07-02 上午 12:01:52

    Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long 这个函数能为窗口指定一个新位置和状态。它也可改变窗口在内部窗口列表

  • avatar
    访客 2022-07-02 上午 07:23:59

    控件以中线对齐,有方法实现吗?谢谢~~呃~这个问题,你在编辑控件的时候,在左下角直接有几个按钮,操作这几个按钮就可以进行操作了~左下角的地方~在基于对话框的mfc中(本来不

  • avatar
    访客 2022-07-01 下午 10:29:48

    有几个按钮,操作这几个按钮就可以进行操作了~左下角的地方~在基于对话框的mfc中(本来不是全屏的)点了最大化后,按钮 图片的位置都变了。怎么解决?OnSize...具体的可以调整void CtestDlg::OnSize(UINT nType, int cx, int cy){ CDialog::O

发表评论