vs2005vc2005_mfc_控件颜色自绘重绘_编辑框_组合框

2024-04-30 02:38

本文主要是介绍vs2005vc2005_mfc_控件颜色自绘重绘_编辑框_组合框,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

vs2005vc2005_mfc_控件颜色自绘重绘_编辑框_组合框

ccombox,编辑控件,groupbox,静态文本,字体颜色

设置透明,设置背景颜色,设置文本颜色

1.主窗口-属性-消息,添加WM_CTLCOLOR,然后编辑代码

 

HBRUSH CInfoBridgeDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);// TODO:  在此更改 DC 的任何属性if (pWnd->GetDlgCtrlID() == IDC_STATIC_ConfigInfo)//静态文本设置红色{//pDC->SetTextColor(RGB(255, 255, 0));//pDC->SelectObject(&control_font);pDC->SetTextColor(RED);pDC->SetBkMode(TRANSPARENT);return m_Brush;}if (pWnd->GetDlgCtrlID() == IDC_STATIC_ReceiveWindow)//静态文本设置红色{//pDC->SetTextColor(RGB(255, 255, 0));//pDC->SelectObject(&control_font);pDC->SetTextColor(RED);pDC->SetBkMode(TRANSPARENT);return m_Brush;}if (pWnd->GetDlgCtrlID() == IDC_STATIC_SendText)//静态文本设置红色{//pDC->SetTextColor(RGB(255, 255, 0));//pDC->SelectObject(&control_font);pDC->SetTextColor(RED);pDC->SetBkMode(TRANSPARENT);return m_Brush;}if (pWnd->GetDlgCtrlID() == IDC_EDIT_SendText)//发送内容文本框{//pDC->SetTextColor(RGB(255, 255, 0));//pDC->SelectObject(&control_font);pDC->SetTextColor(WHITE);pDC->SetBkColor(DodgerBlue1);pDC->SetBkMode(TRANSPARENT);return m_Brush;}if (pWnd->GetDlgCtrlID() == IDC_BUTTON_SendMessage)//静态文本设置红色{//pDC->SetTextColor(RGB(255, 255, 0));//pDC->SelectObject(&control_font);// pDC->SetTextColor(WHITE);//pDC->SetBkMode(TRANSPARENT);return m_Brush;}
// if (pWnd->GetDlgCtrlID() == IDC_COMBO_Entity_ID)//设置组合框{pDC->SetTextColor(WHITE);pDC->SetBkColor(DodgerBlue1);pDC->SetBkMode(TRANSPARENT);return m_Brush;}return m_Brush;// TODO:  如果默认的不是所需画笔,则返回另一个画笔return hbr;
}

头文件添加:

CBrush m_Brush;

OnInitDialog函数里面:

m_Brush.CreateSolidBrush(DodgerBlue1); //背景颜色

头文件顶部包含颜色配置方案
 

#pragma comment(lib, "Uxtheme.lib")
//using namespace std;
const COLORREF DodgerBlue1 =RGB (30, 144, 255);
const COLORREF CLOUDBLUE = RGB(128, 184, 223);
const COLORREF WHITE = RGB(255, 255, 255);
const COLORREF BLACK = RGB(1, 1, 1);
const COLORREF DKGRAY = RGB(128, 128, 128);
const COLORREF LTGRAY = RGB(192, 192, 192);
const COLORREF YELLOW = RGB(255, 255, 0);
const COLORREF DKYELLOW = RGB(128, 128, 0);
const COLORREF RED = RGB(255, 0, 0);
const COLORREF DKRED = RGB(128, 0, 0);
const COLORREF DEEPPINK = RGB(255, 20, 147);
const COLORREF BLUE = RGB(0, 0, 255);
const COLORREF DKBLUE = RGB(0, 0, 128);
const COLORREF CYAN = RGB(0, 255, 255);
const COLORREF DKCYAN = RGB(0, 128, 128);
const COLORREF GRAY = RGB(190, 190, 190);
const COLORREF GREEN = RGB(0, 255, 0);
const COLORREF DKGREEN = RGB(0, 128, 0);
const COLORREF MAGENTA = RGB(255, 0, 255);
const COLORREF DKMAGENTA = RGB(128, 0, 128);
const COLORREF BROWN = RGB(255, 128, 128);
const COLORREF DDKGRAY = RGB(255, 255, 255);
const COLORREF LLTGRAY = RGB(230, 230, 230);
const COLORREF LTBLUE = RGB(150, 150, 255);
const COLORREF LLTBLUE = RGB(0, 128, 255);
const COLORREF SNOW2 = RGB(238, 233, 233);
const COLORREF HONEYDEW1 = RGB(240, 255, 240);
const COLORREF GRAY1 = RGB(185, 185, 185);
const COLORREF GRAY2 = RGB(205, 205, 205);
const COLORREF SPRINGGREEN = RGB(60, 179, 113);

组合框属性参考:

 

这篇关于vs2005vc2005_mfc_控件颜色自绘重绘_编辑框_组合框的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/947725

相关文章

mysql索引四(组合索引)

单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引;组合索引,即一个索引包含多个列。 因为有事,下面内容全部转自:https://www.cnblogs.com/farmer-cabbage/p/5793589.html 为了形象地对比单列索引和组合索引,为表添加多个字段:    CREATE TABLE mytable( ID INT NOT NULL, use

改变背景颜色+碰撞检测

1.让类继承CCLayerColor比如 class HelloWorld:public cocos2d::CCLayerColor{ public : 在.cpp文件中 bool HelloWorld::init(){ if(!CCLayerColor::initWithColor(ccc4(255,255,255,25

XMG xib中不属于一个类的控件,拖线到指定的类中

1.比如我现在有一个view绑定为GreenView,我们按住control向类里面拖线的方式想要达到目的,显然拖不进去。例图如下 那么我们此时还想要达到目的,就需要自己去GreenView的类内部去写IBo 然后这面连接起来 2.第二,大哥郝良建给做的扩展 可以在.h或者.m中写一个NSObject的属性 然后在xib中对应的位置创建一个NSObject的属性

Avalonia 常用控件二 Menu相关

1、Menu 添加代码如下 <Button HorizontalAlignment="Center" Content="Menu/菜单"><Button.Flyout><MenuFlyout><MenuItem Header="打开"/><MenuItem Header="-"/><MenuItem Header="关闭"/></MenuFlyout></Button.Flyout></B

3_创建Tab控件

1,新建MFC 对话框项目,为对话框添加Tab控件,选中Tab控件,新建控件变量m_tab_ctrl 2,为Tab控件添加tab项 m_tab_ctrl.InsertItem(0, L”000”),参数1,哪个位置;参数2,item的名称 3,为Tab控件添加监听事件, void C测试Dlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESUL

2_为MFC程序添加菜单

在MFC中添加菜单栏 1,双击资源文件,显示资源视图,点击Menu插入Menu菜单,编辑菜单的ID,自己取名字。 2,点击“请在此处键入”添加菜单选项,输入&E,E的下面就会产生下划线;在产生的弹出菜单中继续编辑,并且可以添加事件处理函数; 在弹出菜单的任意位置,鼠标右键,弹出的菜单中选择“插入分隔符”,即可产生分隔符 3,在你设计的Dialog窗口的属性栏,选择Menu后面的

示例:推荐一个基于第三方开源控件库DataGridFilter封装的FilterColumnDataGrid,可以像Excel拥有列头筛选器

一、目的:基于第三方开源控件库DataGridFilter封装的FilterColumnDataGrid,可以像Excel拥有列头筛选器,感兴趣的可以去下方链接地址查看开源控件库地址。本控件封装的目的在于将第三方库的皮肤和样式封装到皮肤库中可统一设置样式,同时生成nuget方便调用 二、效果如下 三、环境 VS2022 Net7 四、使用方式 1、安装nuget包:H.Con

怎么优化ArcEngine组件开发mfc程序界面?

🏆本文收录于「Bug调优」专栏,主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!! 问题描述   这种VS2015 + ArcEngine10.2开发的mfc小程序怎么优化界面,使系统看上去更美观 如上问题有来自我自身项目开发,有的收集网站

TextGroupView (TextView组合控件)

TextGroupView ImageView + TextView + TextView +TextView+ EditText +ImageView + ImageView 实现的组合控件 JitPack依赖 A.项目/build.grade allprojects {repositories {...maven { url 'https://jitpack.io' }}} B.

Android 扇形网络控件 - 无网络视图(动画)

前言 一般在APP没有网络的情况下,我们都会用一个无网络的提示图标,在提示方面为了统一app的情况,我们一般使用简单的提示图标,偶尔只需要改变一下图标的颜色就一举两得,而不需要让PS来换一次颜色。当然app有图标特殊要求的就另当别论了。 效果图 当你第一眼看到这样的图,二话不说直接让UI给你切一张图标来的快对吧,我其实开始也是这么想的,但是到了做的app越来越多的时候,你就会发现就算是用