怎麼用c語言寫圖形介面,怎麼用C語言寫圖形介面??

2021-12-19 05:53:57 字數 5752 閱讀 8084

1樓:匿名使用者

這是最簡單的介面程式 : // c++.cpp : 定義應用程式的入口點。

#include "stdafx.h"

#include "c++.h"

#define max_loadstring 100

// 全域性變數:

hinstance hinst; // 當前例項

tchar sztitle[max_loadstring]; // 標題欄文字

tchar szwindowclass[max_loadstring]; // 主視窗類名

// 此**模組中包含的函式的前向宣告:

atom myregisterclass(hinstance hinstance);

bool initinstance(hinstance, int);

lresult callback wndproc(hwnd, uint, wparam, lparam);

int_ptr callback about(hwnd, uint, wparam, lparam);

int apientry _twinmain(hinstance hinstance,

hinstance hprevinstance,

lptstr    lpcmdline,

int       ncmdshow)

unreferenced_parameter(hprevinstance);

unreferenced_parameter(lpcmdline);

// todo: 在此放置**。

msg msg;

haccel hacceltable;

// 初始化全域性字串

loadstring(hinstance, idc_c, szwindowclass, max_loadstring);

myregisterclass(hinstance);

// 執行應用程式初始化:

if (!initinstance (hinstance, ncmdshow))

return false;

hacceltable = loadaccelerators(hinstance, makeintresource(idc_c));

// 主訊息迴圈:

translatemessage(&msg);

dispatchmessage(&msg);

return (int) msg.wparam;

//  函式: myregisterclass()

//  目的: 註冊視窗類。

//  註釋:

//    僅當希望

//    此**與新增到 windows 95 中的「registerclas***」

//    函式之前的 win32 系統相容時,才需要此函式及其用法。呼叫此函式十分重要,

//    這樣應用程式就可以獲得關聯的

//    「格式正確的」小圖示。

atom myregisterclass(hinstance hinstance)

wndclas*** wcex;

wcex.cbsize = sizeof(wndclas***);

wcex.style = cs_hredraw | cs_vredraw;

wcex.lpfnwndproc = wndproc;

wcex.cbcl***tra = 0;

wcex.cbwndextra = 0;

wcex.hinstance = hinstance;

wcex.hicon = loadicon(hinstance, makeintresource(idi_c));

wcex.hcursor = loadcursor(null, idc_arrow);

wcex.hbrbackground = (hbrush)(color_window+1);

wcex.lpszmenuname = makeintresource(idc_c);

wcex.lpszclassname = szwindowclass;

wcex.hiconsm = loadicon(wcex.hinstance, makeintresource(idi_small));

//   函式: initinstance(hinstance, int)

//   目的: 儲存例項控制代碼並建立主視窗

//   註釋:

//        在此函式中,我們在全域性變數中儲存例項控制代碼並

//        建立和顯示主程式視窗。

bool initinstance(hinstance hinstance, int ncmdshow)

hwnd hwnd;

hinst = hinstance; // 將例項控制代碼儲存在全域性變數中

cw_usedefault, 0, cw_usedefault, 0, null, null, hinstance, null);

if (!hwnd)

return false;

showwindow(hwnd, ncmdshow);

updatewindow(hwnd);

return true;

//  函式: wndproc(hwnd, uint, wparam, lparam)

//  目的: 處理主視窗的訊息。

//  wm_command - 處理應用程式選單

//  wm_paint - 繪製主視窗

//  wm_destroy - 傳送退出訊息並返回

lresult callback wndproc(hwnd hwnd, uint message, wparam wparam, lparam lparam)

int wmid, wmevent;

paintstruct ps;

hdc hdc;

switch (message)

case wm_command:

wmid    = loword(wparam);

wmevent = hiword(wparam);

// 分析選單選擇:

switch (wmid)

case idm_about:

dialogbox(hinst, makeintresource(idd_aboutbox), hwnd, about);

break;

case idm_exit:

destroywindow(hwnd);

break;

default:

return defwindowproc(hwnd, message, wparam, lparam);

break;

case wm_paint:

hdc = beginpaint(hwnd, &ps);

// todo: 在此新增任意繪圖**...

endpaint(hwnd, &ps);

break;

case wm_destroy:

postquitmessage(0);

break;

default:

return defwindowproc(hwnd, message, wparam, lparam);

return 0;

// 「關於」框的訊息處理程式。

int_ptr callback about(hwnd hdlg, uint message, wparam wparam, lparam lparam)

unreferenced_parameter(lparam);

switch (message)

case wm_initdialog:

return (int_ptr)true;

case wm_command:

if (loword(wparam) == idok || loword(wparam) == idcancel)

enddialog(hdlg, loword(wparam));

return (int_ptr)true;

break;

return (int_ptr)false;

2樓:匿名使用者

c的標準庫是不提供圖形介面介面的,需要藉助於作業系統的api或者第三方的庫

你可以去搜下c圖形庫,然後學習怎麼使用這個庫來編寫介面程式

3樓:金色潛鳥

要呼叫圖形庫或工具包.

例如,glut, opengl, motif(忘了拼寫).

或用c++,api,mfc等.

如何使用c語言編輯使用者圖形介面。

4樓:匿名使用者

如果只是簡單的修改,例如:標題、背景和前景顏色、視窗大小等等這些可以用api函式實現

5樓:匿名使用者

windows平臺大致以下一些方案:

①直接呼叫win32 api。

②使用mfc,這個需要c++基礎。

③使用gtk+,這個是純c語言,但要用好需要理解裡面的物件導向思想。

等等建議選擇①方案,市面上關於win32 api的書也比較豐富,通過程式設計實踐可以掌握windows平臺下程式設計的基本思想和方法。

如何用c語言程式設計出視覺化介面?

6樓:匿名使用者

純c語言c++很難。那得是大神中的大神。你可以藉助qt工具。或者window 的vs 或者vc編輯。利用win32api 或者mfc等

c語言圖形介面怎麼做出來?

7樓:千鋒教育

windows平臺下,含入windows.h,就可以編寫圖形介面的程式了。跟程序導向還是物件導向沒有關係。

並且c++寫介面一點都不麻煩,它也有很多類庫可以讓你選擇,如vcl,mfc,還有qt之類的跨平臺庫。

初學者很想寫windows圖形介面的程式,推薦c++ builder,雖然現在它的發展不太明朗,但寫起圖形介面來,還是相當容易的,跟visual basic一樣拖拖控制元件就好了。

8樓:小滴

c語言中要做圖形見面,首先需要設定為圖形模式,確定顯示卡型別,對螢幕進行初始化等等,相關的函式如下:

1. detectgraph() 顯示卡檢測函式2. initgraph() 圖形初始化函式3.

getdrivername() 獲取圖形驅動程式名的指標4. getgraphmode() 獲取圖形模式函式5. getmoderange()獲取模式值範圍函式6.

getmaxmode()獲取最大顯示模式函式7. getmodename()獲取顯示模式名函式8. graphdefaults()圖形設定復位預設值函式9.

setgraphmode() 設定圖形模式函式10. restorecrtmode() 恢復文字顯示模式函式11. graphresult() 圖形操作結果函式12.

grpaherrormsg() 圖形錯誤資訊函式13. setgraphbufsize()設定圖形緩衝區大小函式14. setactivepage() 設定可輸出顯示頁函式15.

setvisualpage() 設定可見顯示頁數16. closegraph()關閉圖形模式函式

c語言sin怎麼用,C語言sin怎麼用

c語言sin 用來計算引數x 的正玄值,然後將結果返回。返回 1 至1 之間的計算結果。例子 include main double answer sin 0.5 printf sin 0.5 f n answer 執行sin 0.5 0.479426c語言sin sin 原型 double sin...

怎樣在matlab的GUI圖形介面中的callback函式中再呼叫其他編好的函式呢

必須把函式你編號的函式控制代碼先在gui初始化時新增到類似於handls.控制代碼與資料集合中,再在callback中呼叫gui控制代碼集中你所編寫的函式的控制代碼,思路如此。可以的。保證那些被呼叫的函式儲存在搜尋路徑中,最方便的就是放到同一資料夾中。用matlab中的gui去直接呼叫和執行多個m檔...

怎麼用c語言解析ml檔案,怎麼用c語言解析xml檔案

我上次才給人寫過 xml檔案內容 7 0193阿富汗 afghanistan 阿富汗 afuhan01 802 355阿爾巴尼亞 albania 阿爾巴尼亞 aerbaniya01 執行結果 info 0 id 7 pid 0 continent id 1 guohao 93 cntitle 阿富汗...