c語言Wndproc未定義,為什么我的老是未定義

該樓層疑似違規已被系統折疊?隱藏此樓查看此樓

這是源代碼

#include

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,

TEXT("Get System Metrics No.1"),

WS_OVERLAPPEDWINDOW,

CW_USEDEFAULT,

CW_USEDEFAULT,

CW_USEDEFAULT,

CW_USEDEFAULT,

NULL,

NULL,

hInstance,

NULL);

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)

{

static int cxCher,cxCaps,cyCher;

HDC hdc;

int i;

PAINTSTRUCT ps;

TCHAR szBuffer[10];

TEXTMETRIC tm;

switch (message)

{

case WM_CREATE:

hdc = GetDC(hwnd);

GetTextMetrics(hdc, &tm);

cxCher = tm.tmAveCharWidth;

cxCaps =(tm.tmPitchAndFamily & 1 ? 3 : 2) * cxCher / 2;

cyCher = tm.tmHeight + tm.tmExternalLeading;

ReleaseDC(hwnd, hdc);

return 0;

case WM_PAINT:

hdc = BeginPaint(hwnd, &ps);

for (i = 0; i

{

TextOut(hdc, 0, cyCher*i,

sysmetrics[i].szLabel,

lstrlen(sysmetrics[i].szLabel));

TextOut(hdc, 22 * cxCaps, cyCher*i,

sysmetrics[i].szDesc,

lstrlen(sysmetrics[i].szDesc));

SetTextAlign(hdc, TA_RIGHT | TA_TOP);

TextOut(hdc, 22 * cxCaps + 40 * cxCher, cyCher*i,

szBuffer, wsprintf(szBuffer, TEXT("%5d"),

GetSystemMetrics(sysmetrics[i].iIndex)));

SetTextAlign(hdc, TA_LEFT | TA_TOP);

}

EndPaint(hwnd, &ps);

return 0;

case WM_DESTROY:

PostQuitMessage(0);

return 0;

}

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

}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537791.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537791.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537791.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

spark on yarn

2019獨角獸企業重金招聘Python工程師標準>>> spark on yarn 軟件安裝 當前環境 hadoop環境搭建參考:hadoop集群安裝 hadoop2.6spark-2.2.0-bin-hadoop2.6.tgzscala-2.11.12安裝scala tar -zxvf scala-2.11.12.tgz vi /etc/profile 添加以下內容 export S…

如何查看SQL Server2000執行過的SQL語句

SQLServer事件探查器可以完整記錄SQL服務器執行過的SQL語句以及存儲過程等 下面是SQLServer事件探查器的使用方法: 1. 打開SQL Server 企業管理器。 2. 從“工具”菜單選擇“事件探查器”。 3. 當“事件探查器”主界面打開后,從“文件”菜單選擇“新跟蹤…

c語言鏈表不帶頭節點的排序,不帶頭結點的單向鏈表排序——插入排序(C語言)...

LinkList* LinkListInsertSort(LinkList* pHead){LinkList *pFirst (LinkList *)NULL; /* 原鏈表剩下未排序節點的頭指針 */LinkList *pCurrInsert (LinkList *)NULL; /* 無序鏈表中當前待插入節點 */LinkList *pPrev (LinkList *)NULL; /* 有序鏈表中插入位置的前一個節點 …

免費字體

若不想字體版權有問題,可以參考以下幾種完全免費的字體: 方正:方正黑體、方正書宋、方正仿宋、方正楷體 思源:思源黑體、思源柔黑體、思源宋體 站酷:站酷酷黑體、站酷高端黑體、站酷快樂體、站酷意大利體 。

【Python爬蟲學習筆記12】Ajax數據爬取簡介

有時候在我們設計利用requests抓取網頁數據的時候,會發現所獲得的結果可能與瀏覽器顯示給我們的不一樣:比如說有的信息我們通過瀏覽器可以顯示,但一旦用requests卻得不到想要的結果。這種現象是因為我們通過requests獲得的都是HTML源文檔&…

c語言的報告一,C語言實驗報告(一).doc

C語言實驗報告(一)C語言實驗報告(一)一、實驗目的掌握C語言中,基本的輸入輸出函數的使用方法。掌握printf中轉義字符’\t’,’\n’的用法。掌握賦值語句的用法。掌握算術表達式、賦值表達式的計算。掌握數學函數的使用。二、實驗內容從鍵盤輸入一個6位整…

數據挖掘——相似文章推薦

相似文章推薦:在用戶閱讀某篇文章時,為用戶推薦更多的與在讀文章內容相類似的文章 相關概念: 推薦(Recommended):指介紹好的人或事物,希望被任用或接受。數據挖掘領域,推薦包括相似推薦和協同過濾推薦。 相…

win10投影無法正常使用:我們正在確認此功能 解決方法

鼠標移動到開始按鈕,右鍵----- windows powershell(管理員) 輸入命令: netsh winsock reset 然后重啟電腦,問題解決

青海師大c語言研究生專業課,2016年青海師范大學計算機應用技術C語言程序設計考研復試題庫...

一、選擇題1. 有如下程序:程序運行后的輸出結果是( )。答:C【解析】題目中判斷if 條件是否成立,后a 自增 得if 條件不成立執行else 函數體,輸出F 。最后執行語句故C 選項正確。 按照格式輸出2. 有如下程序:先取值為0, …

產品經理和項目經理的差別

原文地址:https://blog.csdn.net/verifocus/article/details/79219539 --------------------------------------------------------------------- 項目經理與產品經理的區別,用一句話概括就是:產品經理是做正確的事情,項目經理是…

c語言設計一個按時間片輪轉法實現處理器調度的程序,設計一個按時間片輪轉法實現處理器調度的程序...

實驗一處理器調度一、實習內容選擇一個調度算法,實現處理器調度。;二、實習目的在采用多道程序設計的系統中,往往有若干個進程同時處于就緒狀態。當就緒進程個數大于處理器數時,就必須依照某種策略來決定哪些進程優先占用處理器。…

Perl的淺拷貝和深度拷貝

首先是深、淺拷貝的概念: 淺拷貝:shallow copy,只拷貝第一層的數據。Perl中賦值操作就是淺拷貝深拷貝:deep copy,遞歸拷貝所有層次的數據,Perl中Clone模塊的clone方法,以及Storable的dclone()函…

程序員分析報告(2018)-總結篇

一、生活中的程序員 居住篇 在主要職業群體中,程序員更傾向于租房,20.9%的受訪程序員目前自己有房,此比例明顯低于其他職業。大概是因為程序員大部分還比較 年輕,傳說中的超高薪水并不能讓很多人擁有自己的房子而更長的工作…

linux lvm 查看,Linux LVM 詳解

邏輯卷管理LVM是一個多才多藝的硬盤系統工具。無論在Linux或者其他類似的系統,都是非常的好用。傳統分區使用固定大小分區,重新調整大小十分麻煩。但是,LVM可以創建和管理“邏輯”卷,而不是直接使用物理硬盤。可以讓管理員彈性的管…

cnblogs修改網站圖標icon

以下修改網絡地址即可 <script type"text/javascript" language"javascript">//Setting ico for cnblogsvar linkObject document.createElement(link);linkObject.rel "shortcut icon";linkObject.href "icon的網絡地址";do…

maven settings.xml國內倉庫配置

<?xml version"1.0" encoding"UTF-8"?> <settings xmlns"http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation"http://maven.apache.org/SETTINGS/1.…

智慧園區-樓宇建模技巧之【建樓篇】

一、國際慣例先上圖 二、有什么用&#xff1f;用什么搞的&#xff1f;花了多久&#xff1f; 用途 室內定位(會議室、停車位查找等)安防監控(直接定位到某個樓道的攝像頭拉取視頻流)各種傳感器數據三維可視化請問哪里可以買到呢(含笑半步癲2333) 我這里正好有一個。https://iot.…

android meta工具,android ota 升級包制作分析 (5 工具)

工具1 mkbootfsmkbootfs的源代碼在system/core/cpio中。??mkbootfs -f boot_filesystem_config.txt targetfiles/BOOT/RAMDISK | minigzip > ramdisk.img2 mkbootimgmkbootimg的源代碼在system/core/mkbootimg中。mkbootimg --kernel kernel --ramdisk ramdisk.img --outp…

asp.net core輸出中文亂碼的問題

原文:asp.net core輸出中文亂碼的問題 摘要 在學習asp.net core的時候&#xff0c;嘗試在控制臺&#xff0c;或者頁面上輸出中文&#xff0c;會出現亂碼的問題。 問題重現 新建控制臺和站點 public class Program{public static void Main(string[] args){ Console.W…

android oom工具,Android OOM-Heap,MAT工具檢測內存泄露

概述在android的開發中&#xff0c;要時刻主要內存的分配和垃圾回收&#xff0c;因為系統為每一個dalvik虛擬機分配的內存是有限的&#xff0c;在google的G1中&#xff0c;分配的最大堆大小只有16M&#xff0c;后來的機器一般都為24M&#xff0c;實在是少的可憐。這樣就需要我們…