VC++函数(win32_exe)
1.windows输出,以对话框的方式。
int MessageBox( HWND hWnd, // handle to owner window
LPCTSTR lpText, // text in message box
LPCTSTR lpCaption, // message box title
UINT uType // message box style);
UINT uType 表示消息盒子的款式,返回值表示选择了什么按键。
2.添加资源脚本,“文件”-》“新建”-》“file”

对应汉语版和英文版的Vc
资源脚本名字一般和工程名相同
3.右键插入资源

里面有各种资源类型Icon表示软件运行图标,编辑图标后直接编译即可。当有多个图标资源时,软件默认使用最小ID编号的图标
4.在资源中加入对话框后,编译但仍然没有显示,因为winMain中没有包含
5.导入图标,不用自己画了。是.ico格式
、、、、、、
6.DialogMox(IDD_DIALOG1,);调用对话框
7.消息回调函数:当在对话框中有任何点击按钮、输入内容等,都会调用回调函数。
8.使用OutputDebugString()在Debug窗口显示调试信息。
VOID OutputDebugString( LPCTSTR lpOutputString // string to be displayed
);
char s[256];
sprintf(s,"uMsg =%d \n",uMsg);
OutputDebugString(s);
9.从对话框中中的控件中获取
UINT GetDlgItemInt(
HWND hDlg, // handle to dialog box--对话框句柄
int nIDDlgItem, // control identifier--具体控件id
BOOL*lpTranslated, // success state--一般都成功,NULL
BOOL bSigned // signed or unsigned value--有无符号TRUE(有符号),FALSE(无符号)
);
------------------------
将数值打印到指定窗口的指定控件
BOOL SetDlgItemInt(
HWND hDlg, // handle to dialog box--窗口句柄
int nIDDlgItem, // control identifier--控件ID
UINT uValue, // value to set--设置的值
BOOL bSigned // signed or unsigned indicator--有无符号
);
10.INT_PTR DialogBox( //winMain中加载资源
HINSTANCE hInstance, // handle to module---入参为hInstance,winmain的第一个入参,进程句柄
LPCTSTR lpTemplate, // dialog box template---(LPCSTR)DLGID,要将DLGID强制转换为LPCSTR类型--窗口ID关联到回调函数中的句柄(DLGID<->)
HWND hWndParent, // handle to owner window---NULL,不依附于某个窗口
DLGPROC lpDialogFunc // dialog box procedure---回调函数,当对应的DLGID有任何操作都会调用此函数,类似中断
);
11.//定义一个回调函数,函数名自定
BOOL CALLBACK funProc1(
HWND hwndDlg, // handle to dialog box--窗口句柄
UINT uMsg, // message
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
)
12.关闭一个窗口
BOOL EndDialog(
HWND hDlg, // handle to dialog box--要关闭窗口的句柄
INT_PTR nResult // value to return--返回值
);
13.调试时,局部变量要加断点才能看到调试过程中的值,不然程序快速飞过,啥都看不见
14.不使用控制台,改用对话框时,要用回调函数,消息机制。用户在界面任何操作,对应一种事件,调用消息回调函数,根据消息相关参数做响应的事。
15.主函数
int APIENTRY WinMain(
HINSTANCE hInstance,//资源总管
HINSTANCE hPrevInstance,
LPSTR lpCmdLine, //传入参,使用打开命令+ 程序名+参数
int nCmdShow //用来设置程序是明着启动还是暗着启动,缺省为1
)
VC++函数(win32_exe)的更多相关文章
- VC++函数只被调用一次
如何保证某个函数只被调用一次 一个函数caller会在其内部调用另外一个函数callee,现在的情况是,caller可能会在多个地方被多次调用,而你希望callee只在第一次被调用时被调用一次.一 ...
- memset()函数
memset需要的头文件 <memory.h> or <string.h> memset <wchar.h> wmemset 函数介绍 void *memset( ...
- C/C++实践笔记 004
转义字符 #define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h> void main1() { c ...
- VB6.0调用DLL
目录 第1章 VB6.0调用DLL 1 1 VC++编写DLL 1 1.1 使用__stdcall 1 1.2 使用 .DEF 文件 1 2 简单数据类型 2 2.1 传 ...
- c语言memset详解
void *memset(void *s, int ch, size_t n);(int ch可以是char或int) 将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值, 块的 ...
- Qt测算程序运行时间
#include <QDebug> #include <QTime> #include <sys/time.h> #include <windows.h> ...
- UVA 11134 Fabled Rooks(贪心的妙用+memset误用警示)
题目链接: https://cn.vjudge.net/problem/UVA-11134 /* 问题 输入棋盘的规模和车的数量n(1=<n<=5000),接着输入n辆车的所能在的矩阵的范 ...
- 【Qt开发】Qt测试计算时间
方法1 利用QTime,其精度为ms级 </pre><pre code_snippet_id="1852215" snippet_file_name=" ...
- VC++时间函数总结
目录 第1章基本概念 1 1.1 基本概念 1 1.2 时间表示法 2 第2章 Win32 API 3 2.1 获取 3 2.1.1 时间间隔 3 2.1.2 时刻 ...
随机推荐
- Python中urlopen()介绍
#以下介绍是基于Python3.4.3 一. 简介 urllib.request.urlopen()函数用于实现对目标url的访问. 函数原型如下:urllib.request.urlopen( ...
- (转载)C# 编程 使用可空类型
转载出处为://https://msdn.microsoft.com/zh-cn/library/2cf62fcy(vs.90).aspx#Anchor_1 C#可以为 null 的类型可以表示基础类 ...
- 第一个微信小程序(实现点击一个按钮弹出toast)
今天根据网上的教程搭建了微信小程序的环境,然后看文档做了一个简单的小应用. 项目的目录是这个样子的: app.js.app.json.app.wxss是全局文件,必不可少的文件.定义在app.wxss ...
- 二叉树的Morris遍历
二叉树的遍历,除了上篇文章中的传统递归和使用的栈结构的非递归方式,还有如下这种Morris遍历方式,该算法的构思非常巧妙:利用前驱空闲的rightChild指针指向当前节点,形成一个环.时间复杂度和前 ...
- Function 语意学
C++支持三种类型的member functions: static.nonstatic和virtual,每一种类型调用方式都不相同. 一 nostatic members functions 1 调 ...
- 解压和生成 system.img&data.img ( ext4格式)
另一篇文章讲述了如何解压和生成system.img, 那是针对yaffs2格式的文件系统镜像. 目前越来越多的Android手机放弃了nand, 更多采用了emmc为内部存储设备. 以emmc为存储设 ...
- java事件响应方法汇总(容器类监听、监听器类、AbstractAction、反射)
Java图形用户界面中,处理事件时所必须的步骤是: 1.创建接受响应的组件(控件)2.实现相关事件监听接口3.注册事件源的动作监听器4.事件触发时的事件处理 相应的可以通过以下的集中方式来作出事件响应 ...
- bash模式和模式匹配
bash模式和模式匹配 ${variable#pattern} 如果模式匹配变量取值的开头,删除最短匹配部分,返回其余部分 ${variable##pattern} 如果模式匹配变量取值的开头,删除最 ...
- Codeforces 351B Jeff and Furik
http://codeforces.com/problemset/problem/351/B 题意:两个人轮流游戏,先手交换相邻两个数,后手先抛硬币,正面就左大右小换,反面就右大左小换,随机找到一对数 ...
- ASP.NET页面事件顺序
当一个页面请求发送到WEB服务器时,不论该事件是由页面提交还是由页面重定向而激发的,页面在其被创建到释放的过程中都会运行一系列的事件.一个ASP.NET页面从悲怆见到释放的过程包含10个事件. (1) ...