窗體c語言,c語言程序

本文目錄一覽:

C語言裏面如何設置窗體大小?

1、在Window下可以使用

system(“mode

con

cols=30

lines=20″)

命令設置窗體大小。

如果需要動態設置大小,可以寫成如下形式:

char

stCmd[128];

sprintf(“mode

con

cols=%d

lines=%d”,

height,

width);

system(stCmd);

2、system函數:

原型:int

system(const

char

*

command);

功能:執行

dos(windows系統)

shell(Linux/Unix系統)

命令,參數字符串command為命令名;

說明:在windows系統中,system函數直接在控制台調用一個command命令。在Linux/Unix系統中,system函數會調用fork函數產生子進程,由子進程來執行command命令,命令執行完後隨即返回原調用的進程;

頭文件:stdlib.h;

返回值:命令執行成功返回0,執行失敗返回-1。

C語言中,如何在窗體之間互相調用事件?

Form程序的話,最好是把你的邏輯,操作都做成獨立的方法,根據需求設定訪問權限。

而事件里,僅僅就是調用這些方法而已。

當別的窗體需要使用對應的邏輯時只要寫。

Form1 f1=new Form1();

f1.Show();

f1.xxxx();//你的方法。

Form2 form2=new Form2();

form2.Owner=this;

form2.Show();

Form2 裏面獲取如下

Form1 form1=(Form1)this.Owner;

int i=form1.dataGridView.Rows.Count;//這句就是訪問form1的dataGridview1

C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

儘管C語言提供了許多低級處理的功能,但仍然保持着良好跨平台的特性,以一個標準規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。

C語言程序的窗體

可以是可以,但是如果光用C語言的特性來編寫Windows窗口程序太費勁,C不適合寫窗口程序。給你如下代碼,可以在VC中編譯成功。

/*————————————————————

HELLOWIN.C — Displays “Hello, Windows 98!” in client area

(c) Charles Petzold, 1998

————————————————————*/

#include windows.h

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,

PSTR szCmdLine, int iCmdShow)

{

static TCHAR szAppName[] = TEXT (“HelloWin”) ;

HWND hwnd ;

MSG msg ;

WNDCLASS wndclass ;

wndclass.style = CS_HREDRAW | CS_VREDRAW ;

wndclass.lpfnWndProc = WndProc ;

wndclass.cbClsExtra = 0 ;

wndclass.cbWndExtra = 0 ;

wndclass.hInstance = hInstance ;

wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ;

wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;

wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;

wndclass.lpszMenuName = NULL ;

wndclass.lpszClassName = szAppName ;

if (!RegisterClass (wndclass))

{

MessageBox (NULL, TEXT (“This program requires Windows NT!”),

szAppName, MB_ICONERROR) ;

return 0 ;

}

hwnd = CreateWindow (szAppName, // window class name

TEXT (“The Hello Program”), // window caption

WS_OVERLAPPEDWINDOW, // window style

CW_USEDEFAULT, // initial x position

CW_USEDEFAULT, // initial y position

CW_USEDEFAULT, // initial x size

CW_USEDEFAULT, // initial y size

NULL, // parent window handle

NULL, // window menu handle

hInstance, // program instance handle

NULL) ; // creation parameters

ShowWindow (hwnd, iCmdShow) ;

UpdateWindow (hwnd) ;

while (GetMessage (msg, NULL, 0, 0))

{

TranslateMessage (msg) ;

DispatchMessage (msg) ;

}

return msg.wParam ;

}

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

{

HDC hdc ;

PAINTSTRUCT ps ;

RECT rect ;

switch (message)

{

case WM_CREATE:

PlaySound (TEXT (“hellowin.wav”), NULL, SND_FILENAME | SND_ASYNC) ;

return 0 ;

case WM_PAINT:

hdc = BeginPaint (hwnd, ps) ;

GetClientRect (hwnd, rect) ;

DrawText (hdc, TEXT (“Hello, Windows 98!”), -1, rect,

DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;

EndPaint (hwnd, ps) ;

return 0 ;

case WM_DESTROY:

PostQuitMessage (0) ;

return 0 ;

}

return DefWindowProc (hwnd, message, wParam, lParam) ;

}

##########################################

這只是在窗口中間顯示hello,windows98而已,但是代碼卻這麼長,估計你也看不懂。不管是窗體,還是所有功能事件完全得自己寫,太麻煩。研究windows程序運行原理,倒可以學學也無妨。所有windows程序最後編譯後都成為這種形式,但是因為寫代碼的時候完全被面向對象包裝了起來,所以都不知道windows程序原來是這麼啟動的。

怎麼用c語言寫窗體程序

步驟:

1、註冊窗口類;

2、創建窗體;

3、消息循環;

4、編寫窗口消息處理函數。

代碼:

#include windows.h

#includetchar.h

LRESULT CALLBACK WindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);

int WINAPI _tWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR szCmdLine, int nCmdShow)

{

    WNDCLASS wc;

    wc.style = CS_HREDRAW | CS_VREDRAW;

    wc.lpfnWndProc = WindowProc;

    wc.cbClsExtra = 0;

    wc.cbWndExtra = 0;

    wc.hInstance = hInstance;

    wc.hIcon = NULL;

    wc.hCursor = LoadCursor(NULL,IDC_ARROW);

    wc.hbrBackground = (HBRUSH)COLOR_WINDOW;//(HBRUSH)GetStockObject();

    wc.lpszMenuName = NULL;

    wc.lpszClassName = _T(“MyWindowClass”);

    if (!RegisterClass(wc))

    {

        MessageBox (NULL, _T(“無法註冊窗口類”), _T(“錯誤”), MB_OK);

        return 0 ;

    }

    HWND newWindow = CreateWindow(

                                        _T(“MyWindowClass”),

                                        _T(“我的第一個winapi程序”),

                                        WS_OVERLAPPEDWINDOW,

                                        0,

                                        0,

                                        CW_USEDEFAULT,

                                        CW_USEDEFAULT,

                                        NULL,

                                        NULL,

                                        hInstance,

                                        NULL

                                    );

    if (NULL == newWindow)

    {

        MessageBox (NULL, _T(“無法創建窗體”), _T(“錯誤”), MB_OK);

        return 0;

    }

    ShowWindow(newWindow, nCmdShow);

    UpdateWindow(newWindow);

    MSG msg;

    while(GetMessage(msg, NULL, 0, 0))

    {

        TranslateMessage(msg);

        DispatchMessage(msg);

    }

}

    LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

    {

        switch (uMsg)

        {

            case WM_DESTROY:

            {

                PostQuitMessage(0);

                break;

            }

            default :

                return DefWindowProc(hwnd, uMsg, wParam, lParam);

        }

        return 0;

    }

就是一個只有標題欄、關閉按鈕、最小化按鈕、最大化/還原按鈕、顯示區域的窗體。

在c語言中如何創建一個窗體

這個呀~~~~~~~可以使用一些圖形圖像用的LIB,.h,也就是用OpenGL或者是DirectX自己畫……不過估計不會有人這麼干。

一般可以用VC++的MFC類庫,那個甚至有嚮導使你不用自己寫一句代碼就生成一個窗體。然後具體加入什麼功能就看你自己了。

原創文章,作者:DACJ,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/137121.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
DACJ的頭像DACJ
上一篇 2024-10-04 00:17
下一篇 2024-10-04 00:17

相關推薦

  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python購物車程序

    Python購物車程序是一款基於Python編程語言開發的程序,可以實現購物車的相關功能,包括商品的添加、購買、刪除、統計等。 一、添加商品 添加商品是購物車程序的基礎功能之一,用…

    編程 2025-04-29
  • 爬蟲是一種程序

    爬蟲是一種程序,用於自動獲取互聯網上的信息。本文將從如下多個方面對爬蟲的意義、運行方式、應用場景和技術要點等進行詳細的闡述。 一、爬蟲的意義 1、獲取信息:爬蟲可以自動獲取互聯網上…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • Vb運行程序的三種方法

    VB是一種非常實用的編程工具,它可以被用於開發各種不同的應用程序,從簡單的計算器到更複雜的商業軟件。在VB中,有許多不同的方法可以運行程序,包括編譯器、發佈程序以及命令行。在本文中…

    編程 2025-04-29
  • Python一元二次方程求解程序

    本文將詳細闡述Python一元二次方程求解程序的相關知識,為讀者提供全面的程序設計思路和操作方法。 一、方程求解 首先,我們需要了解一元二次方程的求解方法。一元二次方程可以寫作: …

    編程 2025-04-29

發表回復

登錄後才能評論