MFC改变编辑框背景、字体、颜色等
来源:互联网 发布:男士护肤推荐 知乎 编辑:程序博客网 时间:2024/06/11 05:18
1。长度限制
OnInitDialog()中:
m_edit1.SetLimitText(8); //m_edit1为编辑框的成员变量
或者
CEdit*pEdt=(CEdit*)GetDlgItem(IDC_EDIT1);
pEdt->SetLimitText(8); //限制编辑框输入长度为8字节
2。汉字判断
方法一、
CString str="ab你c好。。";
for(int i=0;i<str.GetLength();i++)
{
if( (BYTE)str[i] < 0x80 )
{
MessageBox("非汉字");
}
else//汉字
{
MessageBox("是汉字");
} //方法不好,只能判断有没有汉字
方法二、
CString ss="dd你aa今bb真cc";
int i=0;
while(i<ss.GetLength())
{
if(IsDBCSLeadByte(ss[i]))
{
// 是DBCS
i += 2;
AfxMessageBox("汉字");
}
else
{
// 英文
i ++;
AfxMessageBox("English");
}
}
3。字体及大小
定义一全局变量或成员变量CFont font; //不要定义成局部变量,否则没效果
CEdit*pEdt=(CEdit*)GetDlgItem(IDC_EDIT1);
font.CreatePointFont(266,"Arial");
pEdt->SetFont(&font);
4。背景及文本颜色
定义一成员变量CBrush m_brush;
OnInitDialog()中进行初始化工作m_brush.CreateSolidBrush(RGB(255,0,0));
然后在OnCtrlColor中
HBRUSH CAsdfaaaaaaaaaDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if(nCtlColor==CTLCOLOR_EDIT &&
pWnd->GetDlgCtrlID()==IDC_EDIT1)//注意此处的(pWnd->),否则没效果
{
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(255,255,0));//设置文本背景色
pDC->SetBkMode(TRANSPARENT);//设置背景透明
hbr = (HBRUSH)m_brush;
}
return hbr;
}
对于nCtlColor的类型,如下:
CTLCOLOR_BTN Button control
CTLCOLOR_DLG Dialog box
CTLCOLOR_EDIT Edit control
CTLCOLOR_LISTBOX List-box control
CTLCOLOR_MSGBOX Message box
CTLCOLOR_SCROLLBAR Scroll-bar control
CTLCOLOR_STATIC Static control
OnInitDialog()中:
m_edit1.SetLimitText(8); //m_edit1为编辑框的成员变量
或者
CEdit*pEdt=(CEdit*)GetDlgItem(IDC_EDIT1);
pEdt->SetLimitText(8); //限制编辑框输入长度为8字节
2。汉字判断
方法一、
CString str="ab你c好。。";
for(int i=0;i<str.GetLength();i++)
{
if( (BYTE)str[i] < 0x80 )
{
MessageBox("非汉字");
}
else//汉字
{
MessageBox("是汉字");
} //方法不好,只能判断有没有汉字
方法二、
CString ss="dd你aa今bb真cc";
int i=0;
while(i<ss.GetLength())
{
if(IsDBCSLeadByte(ss[i]))
{
// 是DBCS
i += 2;
AfxMessageBox("汉字");
}
else
{
// 英文
i ++;
AfxMessageBox("English");
}
}
3。字体及大小
定义一全局变量或成员变量CFont font; //不要定义成局部变量,否则没效果
CEdit*pEdt=(CEdit*)GetDlgItem(IDC_EDIT1);
font.CreatePointFont(266,"Arial");
pEdt->SetFont(&font);
4。背景及文本颜色
定义一成员变量CBrush m_brush;
OnInitDialog()中进行初始化工作m_brush.CreateSolidBrush(RGB(255,0,0));
然后在OnCtrlColor中
HBRUSH CAsdfaaaaaaaaaDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if(nCtlColor==CTLCOLOR_EDIT &&
pWnd->GetDlgCtrlID()==IDC_EDIT1)//注意此处的(pWnd->),否则没效果
{
pDC->SetTextColor(RGB(255,0,0));
pDC->SetBkColor(RGB(255,255,0));//设置文本背景色
pDC->SetBkMode(TRANSPARENT);//设置背景透明
hbr = (HBRUSH)m_brush;
}
return hbr;
}
对于nCtlColor的类型,如下:
CTLCOLOR_BTN Button control
CTLCOLOR_DLG Dialog box
CTLCOLOR_EDIT Edit control
CTLCOLOR_LISTBOX List-box control
CTLCOLOR_MSGBOX Message box
CTLCOLOR_SCROLLBAR Scroll-bar control
CTLCOLOR_STATIC Static control
0 0
- MFC改变编辑框背景、字体、颜色等
- MFC改变编辑框背景、字体、颜色等
- MFC改变编辑框背景、字体、颜色等
- MFC改变编辑框背景、字体、颜色等
- MFC编辑框改变背景、颜色等
- MFC编辑框改变背景、颜色等
- MFC编辑框改变背景、颜色等
- MFC编辑框改变背景、颜色
- MFC编辑框改变背景、颜色
- OnCtlColor函数:MFC设置静态文本框,编辑框等控件背景和字体颜色
- VC 编辑框 改变背景、字体、文本颜色、长度限制
- VC 编辑框 改变背景、字体、文本颜色、长度限制
- MFC--控件改变编辑框的字体和颜色
- MFC更改控件字体颜色背景等
- MFC改变编辑框字体
- MFC 改变static字体颜色、大小、背景颜色【自定义类】
- MFC 改变static字体颜色、大小、背景颜色【自定义类】
- MFC 改变static字体颜色、大小、背景颜色【自定义类】
- Web 前端本地化(二)
- Volley源码解析(三)——图片加载
- 深入理解JVM内幕
- [IMX6DL]CPU频率调节模式以及降频方法
- Spring事务失效的原因
- MFC改变编辑框背景、字体、颜色等
- C++根据扩展名获取文件图标、类型
- Android中使用aidl在进程间通信(IPC)
- 数据结构总结---树
- android-----View工作原理系列(一)
- 设计模式--spring源码中使用策略模式(Strategy Pattern)
- 如何判断程序是否重复运行的几种方法
- BCE0004: Ambiguous reference 'preview': CameraMotionBlurEditor.preview, UnityEditor.Editor.preview.
- 成员变量、类变量、局部变量的区别