@@ -68,7 +68,7 @@ void CTaskBarSettingsDlg::DrawStaticColor()
6868 }
6969 m_back_color_static.SetFillColor (m_data.back_color );
7070 // m_trans_color_static.SetFillColor(m_data.transparent_color);
71- m_status_bar_color_static.SetFillColor (m_data.status_bar_color );
71+ m_status_bar_color_static.SetFillColor (m_data.GetUsageGraphColor () );
7272}
7373
7474void CTaskBarSettingsDlg::IniUnitCombo ()
@@ -194,8 +194,9 @@ bool CTaskBarSettingsDlg::InitializeControls()
194194 { CtrlTextInfo::L2, IDC_NET_SPEED_FIGURE_MAX_VALUE_UNIT_COMBO }
195195 });
196196 RepositionTextBasedControls ({
197- { CtrlTextInfo::L4, IDC_USAGE_GRAPH_COLOR_STATIC },
198- { CtrlTextInfo::L3, IDC_TEXT_COLOR_STATIC3 }
197+ { CtrlTextInfo::L2, IDC_USAGE_GRAPH_COLOR_STATIC },
198+ { CtrlTextInfo::L1, IDC_TEXT_COLOR_STATIC3 },
199+ { CtrlTextInfo::C0, IDC_USAGE_GRAPH_FOLLOW_SYSTEM_CHECK, CtrlTextInfo::W16 }
199200 });
200201 RepositionTextBasedControls ({
201202 { CtrlTextInfo::L4, IDC_GRAPH_DISPLAY_MODE_STATIC },
@@ -272,6 +273,7 @@ BEGIN_MESSAGE_MAP(CTaskBarSettingsDlg, CTabDlg)
272273 ON_BN_CLICKED(IDC_WIN11_SETTINGS_BUTTON, &CTaskBarSettingsDlg::OnBnClickedWin11SettingsButton)
273274 ON_BN_CLICKED(IDC_TASKBAR_WND_IN_SECONDARY_DISPLAY_CHECK, &CTaskBarSettingsDlg::OnBnClickedTaskbarWndInSecondaryDisplayCheck)
274275 ON_CBN_SELCHANGE(IDC_DISPLAY_TO_SHOW_TASKBAR_WND_COMBO, &CTaskBarSettingsDlg::OnCbnSelchangeDisplayToShowTaskbarWndCombo)
276+ ON_BN_CLICKED(IDC_USAGE_GRAPH_FOLLOW_SYSTEM_CHECK, &CTaskBarSettingsDlg::OnBnClickedUsageGraphFollowSystemCheck)
275277END_MESSAGE_MAP()
276278
277279
@@ -383,6 +385,8 @@ BOOL CTaskBarSettingsDlg::OnInitDialog()
383385 else
384386 CheckDlgButton (IDC_CM_GRAPH_BAR_RADIO, TRUE );
385387 CheckDlgButton (IDC_SHOW_DASHED_BOX, m_data.show_graph_dashed_box );
388+ CheckDlgButton (IDC_USAGE_GRAPH_FOLLOW_SYSTEM_CHECK, m_data.graph_color_following_system );
389+
386390 m_item_space_edit.SetRange (0 , 32 );
387391 m_item_space_edit.SetValue (m_data.item_space );
388392 CTaskBarDlg* taskbar_dlg{ CTrafficMonitorDlg::Instance ()->GetTaskbarWindow () };
@@ -663,6 +667,11 @@ afx_msg LRESULT CTaskBarSettingsDlg::OnStaticClicked(WPARAM wParam, LPARAM lPara
663667 if (colorDlg.DoModal () == IDOK)
664668 {
665669 m_data.status_bar_color = colorDlg.GetColor ();
670+
671+ // 更改了资源占用图的颜色后,去掉“跟随Windows主题颜色”的勾选
672+ CheckDlgButton (IDC_USAGE_GRAPH_FOLLOW_SYSTEM_CHECK, FALSE );
673+ m_data.graph_color_following_system = false ;
674+
666675 DrawStaticColor ();
667676 m_style_modified = true ;
668677 }
@@ -970,3 +979,10 @@ void CTaskBarSettingsDlg::OnCbnSelchangeDisplayToShowTaskbarWndCombo()
970979
971980 }
972981}
982+
983+
984+ void CTaskBarSettingsDlg::OnBnClickedUsageGraphFollowSystemCheck ()
985+ {
986+ m_data.graph_color_following_system = (IsDlgButtonChecked (IDC_USAGE_GRAPH_FOLLOW_SYSTEM_CHECK) != FALSE );
987+ DrawStaticColor ();
988+ }
0 commit comments