C++初学者:优雅创建第一个窗口

我想学习C++做一些实用的程序,但是我不想在软件界面上花太多的时间,可是每每就是界面影响我的思绪。

今天学习C++类的包装知识,终于整出了一个我的界面类,虽然封装水平很弱, 这次就用这个类,写了自己工作上常用控制软件,验证一下代码能码正常运行 。

准备再花点时间,把这个类整理一下,通过这次程序的编写,我实现了自己的想法,

简单的编程,快乐写代码,实现了我自己想要的效果:

1.所有的事件,按照C#里的方法,采用简单的处理方法。

例:button.event.click = &Form1::button_click ;

所有的事件函数统一格式

void Form1::button_click(EventArgs& e)

{

}

二、所有的属性,可以使用get/set来调用

例: button.font.bold = ture ;button.font.color = red;

三、包装String 类

重载 operator = () ,以实现toString的功能

例 :String str = 100 ; int id = str ;

这样,我就可能省点力气进行转换了。

我喜欢用C#之类的语法,主要是用C++的方法来包装实现,没有错误检查,本身水平也不高,属于初学者之流,但是这里个程序的编写过程中,我检验了自己的想法,并把他实现了。

太好了。真是愉快的一天。我感觉自己进步了一点点。

主要实现了几常用控件的包装:

1.窗口类 Window

2.按钮类 Button

3.视窗类 ListView

4.事件类 Event;

简单 ,方便,再花点时间,这个类写的完善一些,还有好多知识要学习。

加油,努力!

相关推荐
喜欢吃燃面2 小时前
深入 C++ STL:从 unordered_set与unordered_map到底层哈希表的原理与实现
数据结构·c++·散列表
FlightYe3 小时前
音视频修炼之基础理论(五):AAC格式与解析
android·linux·c++·音视频·aac
ShineWinsu3 小时前
对于MySQL:数据库的操作的解析
linux·数据库·c++·mysql·面试·笔试·库的操作
云小逸4 小时前
C++ 第一阶段:对象、内存与生命周期
开发语言·c++
夜航海图4 小时前
S-57 数据解剖:把一个 ENC 文件拆给你看
c++
(Charon)4 小时前
【C++】网络缓冲区设计(三):Chain Buffer链式缓冲区、动态扩容与跨节点读写
服务器·c++
软行5 小时前
LeetCode 每日一题 3876. 构造奇偶一致的数组 II
c++·算法·leetcode
繁星蓝雨6 小时前
C++设计原理———重载(extern “C“的由来、顺序依赖、语义依赖、overload、名称修饰符、对象操作、运算符重载、新增运算符、枚举和布尔类型)
c语言·c++·extern c·overload·重载·语义依赖·顺序依赖
handler016 小时前
【Linux】虚拟地址空间解析
linux·运维·c++·线程·进程·虚拟地址空间·虚拟地址
(Charon)6 小时前
【C++】网络缓冲区设计(二):Ring Buffer环形缓冲区、head/tail与跨界读写
开发语言·c++