透明色转换的处理更新

This commit is contained in:
Zhong Yang
2020-05-31 10:27:03 +08:00
parent dac3cc6fcf
commit e595e66ecd
3 changed files with 5 additions and 5 deletions
+1 -1
View File
@@ -821,7 +821,7 @@ void CCommon::TransparentColorConvert(COLORREF& transparent_color)
BYTE r = GetRValue(transparent_color);
BYTE g = GetGValue(transparent_color);
BYTE b = GetBValue(transparent_color);
if (r == g && g == b)
if (r == b)
{
if (b >= 255)
b--;
+3 -3
View File
@@ -131,9 +131,9 @@ public:
//设置颜色模式
static void SetColorMode(ColorMode mode);
//此函数的作用是判断一个颜色是否为灰色,如果是则转换成不是灰色的颜色,这里是将颜色的B值加1(如果B==255,则减1)
//经过测试发现,当透明色为灰色时,会出现右击任务栏窗口时无法弹出右键菜单,而是弹出系统任务栏右键菜单的问题
//为了解决这个问题,如果要设置的透明色为灰色时,则将颜色中B的值加1
//经过测试发现,似乎当透明色的R和B值相等时,会出现右击任务栏窗口时无法弹出右键菜单,而是弹出系统任务栏右键菜单的问题
//为了解决这个问题,需要将颜色值进行转换
//此函数的作用是判断一个颜色的R和B值是否相等,如果是则将颜色的B值加1(如果B==255,则减1)
static void TransparentColorConvert(COLORREF& transparent_color);
static void SetDialogFont(CWnd* pDlg, CFont* pFont);
+1 -1
View File
@@ -113,7 +113,7 @@ void CTrafficMonitorApp::LoadConfig()
//任务栏窗口设置
m_taskbar_data.back_color = ini.GetInt(_T("task_bar"), _T("task_bar_back_color"), m_taskbar_data.dft_back_color);
m_taskbar_data.transparent_color = ini.GetInt(_T("task_bar"), _T("transparent_color"), m_taskbar_data.dft_transparent_color);
if (m_taskbar_data.back_color == m_taskbar_data.transparent_color) //如果读取到的任务栏背景色和透明色相同,即任务栏背景透明,则如果颜色是灰色,需要将其转换成不是灰色的颜色
if (m_taskbar_data.back_color == m_taskbar_data.transparent_color) //如果读取到的任务栏背景色和透明色相同,即任务栏背景透明,则需要将颜色转换一下
{
CCommon::TransparentColorConvert(m_taskbar_data.back_color);
CCommon::TransparentColorConvert(m_taskbar_data.transparent_color);