① C/C++中顯示像素點的函數
SetPixel
函數原型:COLORREF
SetPixel(HDC
hdc,
int
X,
int
Y,
COLORREF
crColor);
參數:
hdc:設備環境句柄。
X:指定要設置的點的X軸坐標,按邏輯單位表示坐標。
Y:指定要設置的點的Y軸坐標,按邏輯單位表示坐標。
crColor:指定要用來繪制該點的顏色。
頭文件:wingdi.h:庫文件:gdi32.lib
② GDI的GDI的特點
GDI 是C++中常用的一種圖形圖像工具,VB、Delphi等語言也移植了GDI ,.net的諸多語言甚至完全採用GDI作為繪制其界面。
在Windows系統下,幾乎所有的API都是直接針對C語言的,除C/C++可直接使用這些API外,其它各種語言都必須移植這些API方法,而唯獨GDI,微軟提供的Gdiplus頭文件,從類型定義到方法介面,都是針對C++寫的,這就使得C語言沒法使用這些面向對象的方法,即使是GDI提供的原始API,如果不重新定義其參數中眾多的數據類型,C語言也是沒法使用的。
③ 怎麼用vc畫出一條直線
在你的CXXXview類上右鍵 添加成員函數類型void 函數名DDALine(參數是兩個點的xy坐標 還有顏色值RGB 一共五個參數)
再次滑鼠右鍵CXXXView添加成員變數 參數兩個點的坐標 四個參數 都是float 公有成員public
如果直接在窗體里根據已知參數話直線的話 把你的代碼放在OnDraw()函數里
如果用滑鼠操作的話 那你要添加windows消息 按快捷鍵ctrl+w 類向導找到你的CXXXView在消息里添加WM_OnLButtonDown(滑鼠按下) WM_OnMouseMove(滑鼠移動) WM_OnButtonUp(滑鼠抬起) 並設置一個BOOL變數控制畫線
在OnLButtonDown里傳遞參數point.x point.y等於初始點xy坐標 bool量=true
OnMouseMove里的point是第二坐標的xy
OnButtonUp bool量等於false
④ C語言實現多邊形填充
/*直角三角形,輸入行數,輸出*/
#include <stdio.h>
void main()/*如果TC編譯不通過,則去掉void*/
{
int n;
scanf("%d",&n);
for (int i = 1;i <= n;i++)
{
for (int j = 0;j < i;j++)
printf("*");
printf("\n");
}
}
/*等腰三角形,輸入行數,輸出*/
#include <stdio.h>
void main()/*如果TC編譯不通過,則去掉void*/
{
int n;
scanf("%d",&n);
for (int i = 1;i <= n;i++)
{
for (int k = 1;k <= n-i;k++)
printf(" ");
for (int j = 0;j < 2*i-1;j++)
printf("*");
printf("\n");
}
}
以上在VS2005上編譯通過