MFC工控项目实例之一主菜单制作

2024-05-30 23:12

本文主要是介绍MFC工控项目实例之一主菜单制作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、本项目用在WIN10下安装的vc6.0兼容版实现。创建项目名为SEAL_PRESSURE的MFC对话框。在项目res文件下添加相关256色ico格式图片。
2、项目名称:密封压力试验机
主菜单名称:
系统参数 SYS_DATA
系统测试 SYS_TEST
选择型号 TYP_CHOICE
开始试验 TES_START
试验报告 TES_REPORT
系统介绍 SYS__INTRODUCE
退出系统 SYS_EXIT
3、主要用到CButtonST类具体参见本人写的《MFC用CButtonST类实现图片透明按钮(免费源码下载)》
这里给出相关项目截图及主要代码。
在这里插入图片描述
4、SEAL_PRESSUREDlg.h中相关代码

class CSEAL_PRESSUREDlg : public CDialog
{
// Construction
public:CSEAL_PRESSUREDlg(CWnd* pParent = NULL);	// standard constructorCFont m_bFont,m_lFont,m_sFont,m_mFont,m_smFont,m_slFont,m_lhFont;// Dialog Data//{{AFX_DATA(CSEAL_PRESSUREDlg)enum { IDD = IDD_SEAL_PRESSURE_DIALOG };CButtonST	m_TYP_CHOICE;CButtonST	m_TES_START;CButtonST	m_SYS_TEST;CButtonST	m_SYS_EXIT;CButtonST	m_SYS_DATA;CButtonST	m_SYS__INTRODUCE;CButtonST   m_TES_REPORT;//}}AFX_DATA...
};

5、SEAL_PRESSUREDlg.cpp中相关代码


CSEAL_PRESSUREDlg::CSEAL_PRESSUREDlg(CWnd* pParent /*=NULL*/): CDialog(CSEAL_PRESSUREDlg::IDD, pParent)
{m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);m_lFont.CreateFont(-40,0,0,0,700,FALSE,FALSE,0,134,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_SWISS,"楷体_GB2312");在这里插入代码片
...
}void CSEAL_PRESSUREDlg::DoDataExchange(CDataExchange* pDX)
{CDialog::DoDataExchange(pDX);//{{AFX_DATA_MAP(CSEAL_PRESSUREDlg)DDX_Control(pDX, IDC_TYP_CHOICE, m_TYP_CHOICE);DDX_Control(pDX, IDC_TES_START, m_TES_START);DDX_Control(pDX, IDC_SYS_TEST, m_SYS_TEST);DDX_Control(pDX, IDC_SYS_EXIT, m_SYS_EXIT);DDX_Control(pDX, IDC_SYS_DATA, m_SYS_DATA);DDX_Control(pDX, IDC_SYS__INTRODUCE, m_SYS__INTRODUCE);DDX_Control(pDX, IDC_TES_REPORT, m_TES_REPORT);//}}AFX_DATA_MAP
}BOOL CSEAL_PRESSUREDlg::OnInitDialog()
{CDialog::OnInitDialog();...	
GetDlgItem(IDC_STATIC_TITLE)->SetFont(&m_lFont);m_SYS_DATA.SetIcon(IDI_SYS_DATA); m_SYS_DATA.SetAlign(CButtonST::ST_ALIGN_VERT);m_SYS_TEST.SetIcon(IDI_SYS_TEST); m_SYS_TEST.SetAlign(CButtonST::ST_ALIGN_VERT);m_SYS__INTRODUCE.SetIcon(IDI_SYS__INTRODUCE); m_SYS__INTRODUCE.SetAlign(CButtonST::ST_ALIGN_VERT);m_SYS_EXIT.SetIcon(IDI_SYS_EXIT); m_SYS_EXIT.SetAlign(CButtonST::ST_ALIGN_VERT);m_TES_REPORT.SetIcon(IDI_TES_REPORT); m_TES_REPORT.SetAlign(CButtonST::ST_ALIGN_VERT);m_TYP_CHOICE.SetIcon(IDI_TYP_CHOICE); m_TYP_CHOICE.SetAlign(CButtonST::ST_ALIGN_VERT);m_TES_START.SetIcon(IDI_TES_START); m_TES_START.SetAlign(CButtonST::ST_ALIGN_VERT);return TRUE;  // return TRUE  unless you set the focus to a control
}						

运行程序
在这里插入图片描述

这篇关于MFC工控项目实例之一主菜单制作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1017049

相关文章

用Microsoft.Extensions.Hosting 管理WPF项目.

首先引入必要的包: <ItemGroup><PackageReference Include="CommunityToolkit.Mvvm" Version="8.2.2" /><PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.0" /><PackageReference Include="Serilog

eclipse运行springboot项目,找不到主类

解决办法尝试了很多种,下载sts压缩包行不通。最后解决办法如图: help--->Eclipse Marketplace--->Popular--->找到Spring Tools 3---->Installed。

swiper实例

大家好,我是燐子,今天给大家带来swiper实例   微信小程序中的 swiper 组件是一种用于创建滑动视图的容器组件,常用于实现图片轮播、广告展示等效果。它通过一系列的子组件 swiper-item 来定义滑动视图的每一个页面。 基本用法   以下是一个简单的 swiper 示例代码:   WXML(页面结构) <swiper autoplay="true" interval="3

Java面试题:通过实例说明内连接、左外连接和右外连接的区别

在 SQL 中,连接(JOIN)用于在多个表之间组合行。最常用的连接类型是内连接(INNER JOIN)、左外连接(LEFT OUTER JOIN)和右外连接(RIGHT OUTER JOIN)。它们的主要区别在于它们如何处理表之间的匹配和不匹配行。下面是每种连接的详细说明和示例。 表示例 假设有两个表:Customers 和 Orders。 Customers CustomerIDCus

vue项目集成CanvasEditor实现Word在线编辑器

CanvasEditor实现Word在线编辑器 官网文档:https://hufe.club/canvas-editor-docs/guide/schema.html 源码地址:https://github.com/Hufe921/canvas-editor 前提声明: 由于CanvasEditor目前不支持vue、react 等框架开箱即用版,所以需要我们去Git下载源码,拿到其中两个主

React+TS前台项目实战(十七)-- 全局常用组件Dropdown封装

文章目录 前言Dropdown组件1. 功能分析2. 代码+详细注释3. 使用方式4. 效果展示 总结 前言 今天这篇主要讲全局Dropdown组件封装,可根据UI设计师要求自定义修改。 Dropdown组件 1. 功能分析 (1)通过position属性,可以控制下拉选项的位置 (2)通过传入width属性, 可以自定义下拉选项的宽度 (3)通过传入classN

vue3项目将所有访问后端springboot的接口统一管理带跨域

vue3项目将所有访问后端springboot的接口统一管理带跨域 一、前言1.安装Axios2.创建Axios实例3.创建API服务文件4.在组件中使用API服务 二、跨域三、总结 一、前言 在Vue 3项目中,统一管理所有访问后端Spring Boot接口的最佳实践是创建一个专门的API服务层。这可以让你的代码更加模块化、可维护和集中管理。你可以使用Axios库作为HTT

vscode-创建vue3项目-修改暗黑主题-常见错误-element插件标签-用法涉及问题

文章目录 1.vscode创建运行编译vue3项目2.添加项目资源3.添加element-plus元素4.修改为暗黑主题4.1.在main.js主文件中引入暗黑样式4.2.添加自定义样式文件4.3.html页面html标签添加样式 5.常见错误5.1.未使用变量5.2.关闭typescript检查5.3.调试器支持5.4.允许未到达代码和未定义代码 6.element常用标签6.1.下拉列表

局域网内vue2 配置本地IP地址访问项目

在日常开发中同事可能需要访问你的前端项目,可以通过配置实现通过ip访问 一.首先找到config文件夹目录下的 index.js文件             将此处的host的值修改为0.0.0.0(即 host: 0.0.0.0) // Various Dev Server settings//host: 'localhost' //将localhost进行替换成 0.0.0.0host:

如何实现一台机器上运行多个MySQL实例?

在一台机器上一个MySQL服务器运行多个MySQL实例有什么好处?这里我先入为主给大家介绍这样做至少存在两个好处(看完这篇文章后理解会更透彻): (1)减轻服务器链接负担 (2)为不同的用户提供不同的mysqld服务器的访问权限以方便这些用户进行自我管理。   下面我介绍具体的实现过程: 一、准备工作     台式机一台、Windows系统、MySQL服务器(我安装的版本是MySQL