社区
界面
帖子详情
让一个ComboBox的显示字符串以给定的颜色显示,怎么做?
张佩
2005-02-04 10:33:00
rt
...全文
224
5
打赏
收藏
让一个ComboBox的显示字符串以给定的颜色显示,怎么做?
rt
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wizard13
2005-03-24
打赏
举报
回复
A ZA A ZA, FIGHTING!
wizard13
2005-03-24
打赏
举报
回复
jf
张佩
2005-02-05
打赏
举报
回复
/*===========================================================================
==== ====
==== File name : EditTrans.h ====
==== Creation date : 7/10/2001 ====
==== Author(s) : Dany Cantin ====
==== ====
===========================================================================*/
#ifndef EDITTRANS_H
#define EDITTRANS_H
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
/////////////////////////////////////////////////////////////////////////////
// CEditTrans window
#define TRANS_BACK -1
class CEditTrans : public CEdit
{
// Construction
public:
CEditTrans();
// Attributes
private:
COLORREF m_TextColor;
COLORREF m_BackColor;
COLORREF m_EditColor;
CBrush m_Brush;
// Operations
public:
void SetTextColor(COLORREF col) { m_TextColor = col;
UpdateCtrl(); }
void SetBackColor(COLORREF col) { m_BackColor = col;
UpdateCtrl(); }
void SetEditColor(COLORREF col) { m_EditColor = col;
UpdateCtrl(); }
private:
void UpdateCtrl();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CEditTrans)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CEditTrans();
// Generated message map functions
protected:
//{{AFX_MSG(CEditTrans)
afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor);
afx_msg void OnUpdate();
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnKillfocus();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
#endif // EDITTRANS_H
张佩
2005-02-05
打赏
举报
回复
// SuperComboBox.cpp : implementation file
//
#include "stdafx.h"
#include "cfileinfo.h"
#include "SuperComboBox.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSuperComboBox
CSuperComboBox::CSuperComboBox()
{
m_TextColor = RGB(0, 0, 0);
m_BackColor = TRANS_BACK;
m_EditColor = RGB(255, 255, 255);
}
CSuperComboBox::~CSuperComboBox()
{
}
BEGIN_MESSAGE_MAP(CSuperComboBox, CComboBox)
//{{AFX_MSG_MAP(CSuperComboBox)
ON_WM_DESTROY()
ON_WM_CTLCOLOR()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSuperComboBox message handlers
void CSuperComboBox::OnDestroy()
{
CComboBox::OnDestroy();
if ( m_Edit.GetSafeHwnd() != NULL )
{
m_Edit.UnsubclassWindow();
}
// TODO: Add your message handler code here
}
HBRUSH CSuperComboBox::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
if ( nCtlColor == CTLCOLOR_EDIT )
{
if ( m_Edit.GetSafeHwnd() == NULL )
{
m_Edit.SubclassWindow( pWnd->GetSafeHwnd());
m_Edit.SetTextColor(m_TextColor);
m_Edit.SetEditColor(m_EditColor);
m_Edit.SetBackColor(m_BackColor);
}
}
else if (nCtlColor == CTLCOLOR_LISTBOX)
{
//istBox control
if (m_List.GetSafeHwnd() == NULL)
{
m_List.SubclassWindow(pWnd->GetSafeHwnd());
m_List.SetTextColor(m_TextColor);
m_List.SetEditColor(m_EditColor);
m_List.SetBackColor(m_BackColor);
}
}
return CComboBox::OnCtlColor( pDC, pWnd, nCtlColor );
}
张佩
2005-02-05
打赏
举报
回复
#include "CEditTrans.h"
#include "ListBoxTrans.h"
class CSuperComboBox : public CComboBox
{
// Construction
public:
CSuperComboBox();
// Attributes
public:
CEditTrans m_Edit;
CListBoxTrans m_List;
private:
COLORREF m_TextColor;
COLORREF m_BackColor;
COLORREF m_EditColor;
// Operations
public:
void SetTextColor(COLORREF col) { m_TextColor = col;}
void SetBackColor(COLORREF col) { m_BackColor = col;}
void SetEditColor(COLORREF col) { m_EditColor = col;}
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CSuperComboBox)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CSuperComboBox();
// Generated message map functions
protected:
//{{AFX_MSG(CSuperComboBox)
afx_msg void OnDestroy();
afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
C# 实现
ComboBox
显示
图片
本文详细介绍了如何通过设置
ComboBox
的DrawMode属性为OwnerDrawFixed,并结合ImageList控件来实现自定义
ComboBox
控件,使得每个选项既能
显示
图片,又能展示文字信息。同时,通过事件处理在DrawItem事件中实现了背景
颜色
、文字
颜色
、焦点效果等的自定义样式。
在
ComboBox
控件中实现自定义
颜色
和样式
本文聚焦Windows编程,介绍
ComboBox
控件的基础与高级应用,阐述GDI+库的组成、原理及与旧版GDI对比优势。详细讲解自定义DrawItem事件处理程序创建步骤,还介绍
颜色
模型知识及用GDI+绘制
颜色
样本的方法,最后探讨渐变、图案和纹理等不同填充样式的实现。
Laya学习笔记-13
ComboBox
本文详细介绍了 LayaUI 中
ComboBox
组件的功能与使用方法,包括其属性、方法、事件及代码示例。了解如何利用
ComboBox
实现下拉列表功能,掌握其各项配置选项,以增强用户交互体验。
界面
15,976
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章