1、CEdit控件多行显示如何自动显示最后一行?
CEdit m_EDT_Client_Show_Message;
m_EDT_Client_Show_Message.LineScroll(m_EDT_Client_Show_Message.GetLineCount()); //显示部分总是显示最后一行
2、MFC同时激活两个对话框
想要在屏幕上同时显示两个对话框,并且这两个对话框都可以被激活,则至少第二个对话框应该为非模态对话框。启动非模态对话框的方法与启动一个普通窗口的步骤是一样的,即先调用窗口类的Create()函数创建一个窗口对象,再用ShowWindow()使之显示出来即可(值得注意的是:第二个对话框的对象不能为局部变量,否则在退出OnInitDialog时,该对象会被自动关闭,从而导致第二窗口也会关闭)。例如,下列的代码演示了如何在主对话框中,单击一个button启动另一个非模态对话框。
CClientSocket dlg_CClientSocket; //不能像下面一样写在一个方法内,而应该作为CMySocketDlg类下的全局变量
void CMySocketDlg::OnBnClickedBtnOpenClient() //打开客户端
{
//值得注意的是:第二个对话框的对象不能为局部变量,否则在退出OnInitDialog时,该对象会被自动关闭,从而导致第二窗口也会关闭
//CClientSocket dlg_CClientSocket; //如果这么写就dlg_CClientSocket就是CMySocketDlg::OnBnClickedBtnOpenClient()的局部变量了,就会失败了
dlg_CClientSocket.Create(IDD_CLIENT_SOCKET,this);
dlg_CClientSocket.ShowWindow(SW_SHOW);
}
3*改变对话框table键顺序(转载)
打开ResourceView,点击相应对话框。
点击ctrl+d,就会显示目前的table键顺序。
鼠标依次点击控件,就可以改变控件的table顺序。
*编辑框处回车时按按钮
打开ResourceView,点击相应对话框。
右键某个Button控件,选择properties。
在Stype页中选中Default button,即把改按钮设置为默认按钮。
那么,在运行时,如果在编辑框中按回车键,就会点击该按钮。
4、MFC按下回车键不退出dialog而是发送EDIT中的数据(网络编程,其他类似)
如下,按下回车键把待发送的内容发出去:
afx_msg void OnBnClickedServerSend();
BEGIN_MESSAGE_MAP(CMySocketDlg, CDialog)
//……………………………………
ON_BN_CLICKED(IDC_SERVER_SEND, &CMySocketDlg::OnBnClickedServerSend) //按键响应
ON_BN_CLICKED(IDOK, &CMySocketDlg::OnBnClickedServerSend) //回车键响应
//……………………………………
END_MESSAGE_MAP()
void CMySocketDlg::OnBnClickedServerSend() //点击发送的响应
{
//………………
}
下面的关闭窗口,函数响应可以为: OnCancel();