0

我在上面创建了一个选项卡控件和几个选项卡项。我希望我的选项卡控件(没有项目的区域)背景具有良好的外观。所以我使用 GradientFill 来绘制选项卡控件。但是这样做,选项卡项就会消失。这与父子窗口的情况不同。那么,如果我想更改选项卡控件的背景,我是否也应该绘制选项卡项?

这是代码:

switch(message) {
    case WM_PAINT:
        HDC hdc;
        PAINTSTRUCT ps;
        RECT rectTabControl;

        hdc = BeginPaint(hwnd, &ps);

        GetClientRect(hwnd, &rectTabControl);

        TRIVERTEX        vert[2] ;
        GRADIENT_RECT    gRect;

        vert [0] .x      = 0;
        vert [0] .y      = 0;
        vert [0] .Red    = 0x1000;
        vert [0] .Green  = 0x0000;
        vert [0] .Blue   = 0x0000;
        vert [0] .Alpha  = 0x0000;

        vert [1] .x      = rectTabControl.right;
        vert [1] .y      = rectTabControl.bottom; 
        vert [1] .Red    = 0xff00;
        vert [1] .Green  = 0x0000;
        vert [1] .Blue   = 0x0000;
        vert [1] .Alpha  = 0x0000;

        gRect.UpperLeft  = 0;
        gRect.LowerRight = 1;

        GradientFill(hdc,vert,2,&gRect,1,GRADIENT_FILL_RECT_H);

        EndPaint(hwnd, &ps);
        return 0;
}
4

1 回答 1

1

“那么,如果我想更改选项卡控件的背景,我是否也应该绘制选项卡项?”

是的。

于 2012-05-24T22:24:33.363 回答