setbktcolor設(shè)置背景色

setbktcolor設(shè)置背景色

函數(shù)setbkcolor用于設(shè)置繪圖時(shí)的背景顏色。其調(diào)用格式為:

setbkcolor(color);

其中color為一個(gè)整型數(shù)值,代表所取的顏色,顏色與前景色設(shè)置相同。

9-8圍棋棋盤繪制,實(shí)現(xiàn)用紅色、藍(lán)色交替繪制棋盤線

#include <graphics.h>

#include <conio.h>

void main()

{

int x,y;

    initgraph(640, 480);

    for(y=30,x=40; y<480;y+=30,x+=40)

    {

          if (y/30% 2 ==1||x/40%2==1)     /* 判斷奇數(shù)行偶數(shù)行*/

             setcolor(RGB(255,0,0));

          else

             setcolor(RGB(0,0,255));

          line(0,y,640,y);

line(x,0,x,480);

    }

    getch();

    closegraph();

}

程序運(yùn)行結(jié)果

setbktcolor設(shè)置背景色

9-7 圍棋棋盤效果圖

3.setlinestyle設(shè)置線型

setlinestyle這個(gè)函數(shù)用于設(shè)置當(dāng)前畫線樣式。

void setlinestyle(

    const LINESTYLE* pstyle

);

void setlinestyle(

    int style,

    int thickness = 1,

    const DWORD *puserstyle =NULL,

    DWORD userstylecount = 0

);

參數(shù):

1.Pstyle為指向畫線樣式 LINESTYLE 的指針。

2.Style為畫線樣式,由直線樣式、端點(diǎn)樣式、連接樣式三類組成。可以是其中一類或多類的組合。同一類型中只能指定一個(gè)樣式。

直線樣式見(jiàn)表9-3所示。

9-3 直線樣式含義表

 

 
 

含義

 
 

PS_SOLID

 
 

線形為實(shí)線。

 
 

PS_DASH

 
 

線形為虛線。

 
 

PS_DOT

 
 

線形為點(diǎn)線。

 
 

PS_DASHDOT

 
 

線形為虛點(diǎn)線。

 
 

PS_DASHDOTDOT

 
 

線形為雙點(diǎn)線。

 
 

PS_NULL

 
 

線形為不可見(jiàn)。

 
 

PS_USERSTYLE

 
 

線形樣式為用戶自定義,有參數(shù) puserstyle 和 userstylecount 指定。

 

端點(diǎn)樣式見(jiàn)表9-4所示:

9-4 端點(diǎn)樣式         

 

 
 

含義

 
 

PS_ENDCAP_ROUND

 
 

端點(diǎn)為圓形。

 
 

PS_ENDCAP_SQUARE

 
 

端點(diǎn)為方形。

 
 

PS_ENDCAP_FLAT

 
 

端點(diǎn)為平坦。

 

連接樣式見(jiàn)表9-5所示:

9-5 連接樣式   

 

 
 

含義

 
 

PS_JOIN_BEVEL

 
 

連接處為斜面。

 
 

PS_JOIN_MITER

 
 

連接處為斜接。

 
 

PS_JOIN_ROUND

 
 

連接處為圓弧。

 

3.Thickness:線的寬度,以像素為單位。

4.puserstyle:用戶自定義樣式數(shù)組,僅當(dāng)線型為 PS_USERSTYLE 時(shí)該參數(shù)有效。

數(shù)組第一個(gè)元素指定畫線的長(zhǎng)度,第二個(gè)元素指定空白的長(zhǎng)度,第三個(gè)元素指定畫線的長(zhǎng)度,第四個(gè)元素指定空白的長(zhǎng)度,以此類推。

5.userstylecount:用戶自定義樣式數(shù)組的元素數(shù)量

返回值:(無(wú))

示例:

以下局部代碼設(shè)置畫線樣式為點(diǎn)劃線:

setlinestyle(PS_DASHDOT);


以下局部代碼設(shè)置畫線樣式為寬度 3 像素的虛線,端點(diǎn)為平坦的:

setlinestyle(PS_DASH | PS_ENDCAP_FLAT, 3);


以下局部代碼設(shè)置畫線樣式為寬度 10 像素的實(shí)線,連接處為斜面:

setlinestyle(PS_SOLID | PS_JOIN_BEVEL, 10);


以下局部代碼設(shè)置畫線樣式為自定義樣式(畫 5 個(gè)像素,跳過(guò) 2 個(gè)像素,畫 3 個(gè)像素,跳過(guò) 1 個(gè)像素……),端點(diǎn)為平坦的:

DWORD a[4] = {5, 2, 3, 1};

setlinestyle(PS_USERSTYLE | PS_ENDCAP_FLAT, 1, a, 4);