简单有趣的c语言小程序,一个有趣的小程序

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

源码:

#include

#include

#include

#include

#include

HINSTANCE g_hInstance = 0;

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

int WINAPI WinMain(

HINSTANCE hInstance,

HINSTANCE hPreInstance,

LPSTR lpCmdLine,

int nShowCmd

)

{

g_hInstance = hInstance;

srand((unsigned)time(NULL));

//1.注册窗口类

WNDCLASS wc = { 0 };

wc.lpszClassName = _T("MyClass");

wc.lpfnWndProc = WndProc;

wc.hbrBackground = GetSysColorBrush(COLOR_WINDOW);

RegisterClass(&wc);

//2.创建窗口

HWND hWnd = CreateWindow(

wc.lpszClassName,

_T("顽皮的按钮"),

WS_OVERLAPPEDWINDOW,

200, 100,

640, 480,

NULL,

NULL,

g_hInstance,

0

);

//3.更新显示窗口

UpdateWindow(hWnd);

ShowWindow(hWnd, SW_SHOW);

//4.消息循环

MSG Msg = { 0 };

while (GetMessage(&Msg, 0, 0, 0))

{

TranslateMessage(&Msg);

DispatchMessage(&Msg);

}

return (int)Msg.lParam;

}

LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

{

static int nCnt = 0;

switch (uMsg)

{

case WM_CREATE:

{

HWND hButton = CreateWindow(

_T("button"),

_T("来点我"),

WS_CHILD | WS_VISIBLE,

10, 10,

80, 45,

hWnd,

HMENU(0x1000),

g_hInstance,

0

);

}break;

case WM_COMMAND:

{

DWORD nCode = HIWORD(wParam);

DWORD nId = LOWORD(wParam);

if (nId == 0x1000 && nCode == BN_CLICKED)

{

if (nCnt == 10)

{

MessageBox(hWnd, _T("恭喜你点到了!"), _T("嘿嘿"), MB_OK);

PostMessage(hWnd, WM_CLOSE, 0, 0);

}

HWND hButton1 = GetDlgItem(hWnd, 0x1000);

int x = rand() % 520;

int y = rand() % 390;

MoveWindow(hButton1, x, y, 100, 50, true);

UpdateWindow(hWnd);

nCnt++;

}

}break;

case WM_CLOSE:

PostQuitMessage(0);

break;

}

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

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/532778.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux下ora 01110,ORA-01003ORA-01110

Oracle 9i数据库登录时,提示ORA-01003&ORA-01110,大概意思是数据文件存储介质损坏。startup nomount,正常;alter database mount,也正常;alter database open,提示如下:alter database open*ERROR 位于第 1 行:ORA…

x11转发:通过ssh远程使用GUI程序

x11转发:通过ssh远程使用GUI程序 我们常常使用ssh服务远程操控服务器,大多数操作我们都可以通过命令行命令来实现。 ssh远程无法查看GUI程序 现在,笔者在x11-test目录下放入一张图片test.jpg,并通过opnencv-python写一个简单的…

操作系统引导详细过程

操作系统引导详细过程 转自:https://blog.csdn.net/lijie45655/article/details/89366372 就直观而言,我们所见到计算机启动的过程是:按下电脑开机键,系统在黑色的屏幕下打印出一些英文语句、然后进入进度条状态,最后…

android 自定义透明 等待 dialog,Android自定义Dialog内部透明、外部遮罩效果

Android自定义Dialog内部透明、外部遮罩效果发布时间:2020-09-09 03:01:41来源:脚本之家阅读:117作者:zst1303939801本文实例为大家分享了Android自定义Dialog遮罩效果的具体代码,供大家参考,具体内容如下图…

对比损失的PyTorch实现详解

对比损失的PyTorch实现详解 本文以SiT代码中对比损失的实现为例作介绍。 论文:https://arxiv.org/abs/2104.03602 代码:https://github.com/Sara-Ahmed/SiT 对比损失简介 作为一种经典的自监督损失,对比损失就是对一张原图像做不同的图像…

android 融云浏览大图,融云 Android sdk kit 头像昵称更新机制

先申明笔者的实现方式不是唯一 也不一定是最优化的方案 如果您看到此篇博文 有不同看法 或者 更好的优化 更高的效率 欢迎在评论发表意见 融云官网点我融云头像机制相关视频详解首先跟大家说一下 kit 跟 lib 的头像机制 kit 是已经包含融云已经给开发者定制好的界面 诸如 会话界…

RuntimeError: Expected to have finished reduction in the prior iteration before starting a new one.

RuntimeError: Expected to have finished reduction in the prior iteration before starting a new one. 报错信息 报错信息: RuntimeError: Expected to have finished reduction in the prior iteration before starting a new one. This error indicates tha…

android访问重定向地址,如何从android中重定向url加载图像(示例代码)

嗨,我正面临这个问题我从RESTCall获取了一个URL网址是http://hck.re/kWWxUI但是当我在浏览器中检查时,它会重定向到https://s3-ap-southeast-1.amazonaws.com/he-public-data/afreen2ac5a33.jpg如何将此图像加载到我的imageView中我已经知道如何将毕加索…

Linux中的awk、sed、grep及正则表达式详解

Linux中的awk、sed、grep及正则表达式详解 简介 awk、sed和grep是Linux中文本操作的三大利器。 其中awk适用于取列,sed适用于取行,grep适用于过滤。 正则表达式 首先我们来介绍一下正则表达式,正则表达式(regular expression)描述了一种…

android聚焦时如何给控件加边框,edittext设置获得焦点时的边框颜色

第一步:为了更好的比较,准备两个一模一样的EditText(当Activity启动时,焦点会在第一个EditText上,如果你不希望这样只需要写一个高度和宽带为0的EditText即可避免,这里就不这么做了),代码如下:a…

gcc参数 -i, -L, -l, -include

gcc参数 -i, -L, -l, -include -i,-L,-l,-include -l和-L -l参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?就拿数学库来说,他的库名是m&…

xargs 命令教程

xargs 命令教程 转自:http://www.ruanyifeng.com/blog/2019/08/xargs-tutorial.html 作者: 阮一峰 日期: 2019年8月 8日 xargs是 Unix 系统的一个很有用的命令,但是常常被忽视,很多人不了解它的用法。 本文介绍如…

android strictmode有什么作用,Android 性能优化 之 StrictMode

8种机械键盘轴体对比本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?StrictMode概述StrictMode 是用来检测程序中违例情况的开发者工具。使用StrictMode,系统检测出主线程违例的情况会做出相应的反应,如日志打…

curl 的用法指南

curl 的用法指南 转自:http://www.ruanyifeng.com/blog/2019/09/curl-reference.html 作者: 阮一峰 日期: 2019年9月 5日 简介 curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client&#xf…

怎么在html显示已登录状态,jQuery Ajax 实现在html页面实时显示用户登录状态

当网站是全静态的html页面时,而又希望网站会员在登录之后并在所有页面头部显示登录状态,如用户名等,如果未登录就是未登录状态,下面给大家来分享实现的方法。一、在html静态页面中加入div,并指定ID如:二、新…

互斥锁、条件变量、信号量浅析

互斥锁、条件变量、信号量浅析 互斥锁与条件变量 条件变量是为了保证同步 条件变量用在多线程多任务同步的,一个线程完成了某一个动作就通过条件变量告诉别的线程,别的线程再进行某些动作(大家都在semtake的时候,就阻塞在哪里&a…

xpwifi热点设置android,教你在XP电脑中开启设置WiFi热点使用的步骤

对于系统中网络的连接问题是最重要的,那在处理不同的错误的情况中,对于无线网络的设置也就是我们说的WiFi的使用也是会遇到问题的,那在操作的时候对于电脑中是怎么实现设置WiFi热点的的,对于这个问题今天小编就来跟大家分享一下教…

C/C++ 指针详解

指针详解 参考视频:https://www.bilibili.com/video/BV1bo4y1Z7xf/,感谢Bilibilifengmuzi2003的搬运翻译及后续勘误,也感谢已故原作者Harsha Suryanarayana的讲解,RIP。 学习完之后,回看找特定的知识点,善…

android双联动列表,Android Fragment实现列表和内容联动

在平板上经常能看到这种的情况:左边是一个列表,右边是列表项对应的内容,当点击某一个列表时,右边内容区也会随之改变。下面使用fragment简单的demo:思路:在mainactivity定义一个回调接口,并在列…

linux /proc 详解

linux /proc 详解 本文整理了一下 linux /proc下的几个常用的目录和文件,可供查阅,之后在学习工作中有别的用到的话会再补充。 /proc 简介 Linux系统上的/proc目录是一种文件系统,即proc文件系统。与其它常见的文件系统不同的是&#xff0…