① MFC工具箱的对话框编辑器中没有文本框控件 怎么办
不可能
② MFC单文档 如何用CEdit创建一个最简单的输入框
te(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: Add your specialized creation code here
RECT rect;
rect.left = 20;
rect.right=100;
rect.top=20;
rect.bottom=40;
m_Edit.Create(ES_LEFT|ES_AUTOHSCROLL|WS_BORDER|WS_VISIBLE|WS_CHILD|WS_TABSTOP,rect,this,IDC_MYEDIT);
return 0;
}
IDC_MYEDIT是一个宏代表你的编辑框的ID,你可以自己定义成一个和其他资源不冲突的整数
在OnCreate中创建就行,位置自己调
m_Edit定义成你CComWorkView的成员变量就行,以便后面使用
③ MFC中dialog中edit编辑框的相关问题。
GetDlgItem()是CDialog类的方法,你在别的类里面调用它当然会出错啦。
如果你想让你的对话框初始化的时候就显示abc的话,你得修改你的CCtDlg类,重载CDialog类的OnInitialDlg方法响应初始化对话框消息,把你的这句GetDlgItem(IDC_EDIT1)->SetWindowText("abc");放在那里面去执行。
你这里DoModal都调完了,说明对话框都退出了,这时候还怎么改它上面的控件显示啊。
④ mfc 怎么样使编辑框只能输入英文和数字
重载CEdit的OnChar()函数
⑤ 怎样用mfc来创建一个只接收英文字母的编辑框
从CEdit派生一个新的MyEdit类,定义一个输入TXT对话框,输出可以不要派生,在类的PreTranslateMessage()函数中处理
BOOL CMyEdit::PreTranslateMessage(MSG* pMsg)
{
if(pMsg-> message==WM_KEYDOWN)
{
//这里做的事情是,当你一按 回车,把变量保存输入TXT的值,追加到输出TXT,在输出TXT显示,就可以看到你的效果
}
return CEdit::PreTranslateMessage(pMsg);
}
追问
我觉得您说得挺对了。。
我自定义了一个类CMyEdit类
我尝试把原来的编辑框与这个类的变量关联起来,但是在Class wizzard 添加变量的时候却找不到我的自定义类。。这个问题怎么解决啊??
回答
你直接在CMyEdit.h里面写就可以了,定义一个protect,或是public的CSTring变量
,当时你直接用外面的变量获取就可以了,没必要在里面定义一个变量
⑥ visual studio 2008中基于对话框的MFC项目下,工具箱里除了对话框编辑器,控件怎么那么少,怎么添加
好象可以在工具箱上右单击,选“选择项”。弹出对话框后选择添加
⑦ MFC中View类如何获取工具栏上编辑框的内容
仅供参考:
使用GetDlgItemText函数获取控件上的内容,比如
CString str;
GetDlgItemText(IDC_EDIT,str);
⑧ MFC中,有个编辑框IDC_EDIT1,现在想设定只能在此框中输入半角的英文和数字.请问您该怎么设定呀
那简单啊 CString m_str("hi中文hello");
LPCTSTR str = m_str; //把CString类型转换为char* 类型
for (int i=0;str[i];i++)
{
if (str[i] < 0) //一个中文占两个字节,且每个字节都是小于0的
{
CString tmp;
tmp.Format("%c%c",str[i],str[i+1]);//把中文输出,举个例子
i++;
MessageBox(tmp);
}
}
⑨ 在mfc怎样在工具条中添加编辑框
在CMainFrame中加成员变量CComboBoxm_comboList;CStaticm_static;然后是OnCreate()中添加代码,注释掉的是添加下拉框的代码,如下:intCMainFrame::OnCreate(LPCREATESTRUCTlpCreateStruct){if(CFrameWndEx::OnCreate(lpCreateStruct