导航:首页 > IDC知识 > vcidc

vcidc

发布时间:2020-12-27 08:37:33

1、在 VC6.0 MFC 一个编辑框的id为IDC_EDIT1 一个按钮(一)的id为IDC_BUTTON1

在头文件中添加
afx_msg void OnBnButton1();
在实现文件中
BEGIN_MESSAGE_MAP(CXXXDlg, CDialogEx)

END_MESSAGE_MAP()
上面这部分中间里面添加
ON_BN_CLICKED(IDOK, OnBnButton1)
然后再实现文件中,随便找个空白的地方贴一下下面的代码
void CXXXDlg::OnBnButton1()
{
CString strTemp = _T("");
GetDlgItem(IDC_EDIT)->GetWindowText(strTemp);
strTemp += _T("1");
GetDlgItem(IDC_EDIT)->SetWindowText(strTemp);

}
其中CXXXDlg是你工程的名字

2、VC中找不到 IDC_OPEN 选项

你遇到的是什么问题?

那些 IDC 什么的不过是自动生成的宏定义, 其实就是整数, 你新建专的时候手动敲进去属就好了, MFC 会自动生成相应的宏定义
名字没有什么特殊规定, 写成 IDC 不过是习惯而已

如果是编译的时候提示找不到什么什么的, 你可以去 Resource.h 和 *.rc 等文件看看是不是缺了宏定义

3、有下面的一段VC代码:GetDlgItem(IDC_STATIC)->SetWindowText("明日科技");这段代码是什么意思?

因为所有的静态控件都是基于窗口的,所以都有SetWindowText方法
GetDlgItem(IDC_STATIC)获得IDC_STATIC窗口指针
SetWindowText()把该内窗口文字显示为“明日容科技”

用于不给控件关联成员变量的情况下,不用UpdateData(FALSE)更新

SetDlgItemText的原型如下,三个变量分别为窗口句柄,ID,字串
BOOL SetDlgltemText(HWND hDlg,int nlDDlgltem,LPCTSTR IpString);

4、VC++6.0中,加入一个组合框IDC_COMBO1,设置变量m_txt,如何将在IDC_COMBO1组合框中加入数据,代码如下

m_txt.AddString(_T("重庆"));
m_txt.AddString(_T("四川"));
m_txt.SetCurSel(0);


这段代码可以放在对话框初始化的地方,添加变量时内自动生成的容。

5、VC中隐藏和显示IDC_STATIC

我来给上面的补充代码
void CImageShowAndHideDlg::OnBnClickedButton1() //隐藏
{

CWnd* pWnd = GetDlgItem(IDC_STATIC);
pWnd->ShowWindow(SW_HIDE);
}
void CImageShowAndHideDlg::OnBnClickedButton2()//显示内
{
// TODO: 在此添加控件通容知处理程序代码
CWnd* pWnd = GetDlgItem(IDC_STATIC);
pWnd->ShowWindow(SW_SHOW);//SW_SHOW表示显示(子)窗口
}

6、VC++代码解释一下

这个是消息映射表,
第一句是消息映射的开始,
最后一行是结束
当中就是具体的消息关联了
ON_WM_SYSCOMMAND()//当点窗口左上角弹出系统菜单时,点相应的选项会产生WM_SYSCOMMAND消息,这行就是说,本窗体会相应控制菜单。
ON_WM_PAINT()//相应WM_PAINT,就是窗体重绘
ON_WM_QUERYDRAGICON()//没有定义图标的窗体当其最小化时发送WM_QUERYDRAGICON消息,本行就是说,本窗体会相应这个消息
ON_BN_CLICKED(IDC_OPENCOM, OnOpencom)//这行是响应按钮单击消息。意思是当单击一个ID号为IDC_OPENCOM的按钮时,会产生这个消息,并由OnOpencom这个函数响应,就是说这个函数将会执行

ON_NOTIFY(TCN_SELCHANGE, IDC_TAB1, OnSelchangeTab1)//这是一个通知消息。当一个控件(IDC_TAB1)发生某些事件(例如TCN_SELCHANGE)时,OnSelchangeTab1就会执行。

ON_WM_CTLCOLOR()//这是控件颜色背景等的绘制响应,当控件等重绘的时候,会调用OnCtrlColor函数,这是个虚函数,可以自己重写

7、VC++6.0能修改图片中的ID:IDC_STATIC,再用函数SetDlgItemText(IDC_STATIC,XXXXX);来显示。

可以的,把id改成其他的,只要保证唯一就可以了

8、在vc++里GetDlgItem( IDC_PSWD )->SetWindowText( "" ); 怎么显示数值型变量?

1.int变量可以转换为字符串变量再输出
TCHAR text[100];
_stprintf(text, _T("%d"), i);//假设i为你要输出的int变量
GetDlgItem( IDC_PSWD )->SetWindowText(text);

2.Sleep(1000)表示当前线程休息1秒专 如果你的用户界面属线程Sleep(1000) 那在这一秒内程序不能进行任何响应 所以请不要在界面线程里用Sleep 可以在创建的工作线程里面使用Sleep

9、VC里 IDC_RADIO radio 空间简单问题

注意:style里面的 groups的检查框。默认是够选的。但是如果你想让你的2个Radio 是产生互斥,就是能够只选择一个。那么就只讲你的第一个的group 勾选,其他的不选!

与vcidc相关的知识