簡體   English   中英

更改SysLink控件的背景色-MFC

[英]Chaning the background color of SysLink Control - MFC

我在設置SysLink控件的背景色時遇到問題。

我有一個組合框,還有幾個SysLink控件。 當我更改組框的背景色以及syslink控件時,這就是它的樣子……

在此處輸入圖片說明

一條白色小線出現在末尾。 即使調整控件的寬度也不會消失。

這是我的代碼:

HBRUSH PanelDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
        pDC->SetBkColor(RGB(0, 0, 255));//RGB(223, 233, 247)
        pDC->SetTextColor(RGB(0, 0, 0));
        return (HBRUSH)GetStockObject(NULL_BRUSH);
}

和OnPaint ...

void PanelDlg::OnPaint()
{
    CRect rect1;
    GetDlgItem(IDC_MENU_GROUP_BOX)->GetWindowRect(&rect1);
    ScreenToClient(&rect1);
    CPaintDC dc(this);
    dc.FillSolidRect(&rect1, RGB(0, 0, 255));// RGB(223, 233, 247)); //247
    CDialogEx::OnPaint();
}

我認為您不需要OnPaint()處理程序,請嘗試在OnCtlColor()返回具有相同背景顏色的OnCtlColor() ,就像在對類似問題的SO中那樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM