`
happmaoo
  • 浏览: 4504366 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

windows SDK编程基础-Button类的封装 .

 
阅读更多

我想学好用C编写软件,但是C的知识一直不无法深入,C++也是一知半解,
我希望我能静下心下,用心学习一段时间,先不要去学基础的语法知识,太枯燥。没效果。
也不要去学什么算法和数据结构,用不到。不要应为这些东西很高深,就去装深沉。

我希望我能从我最感兴趣的方面入手学习。
我希望我能找到让自己感兴趣的学习方法。

那就老老实实做一个按钮,总行了吧。

按钮是一个很基本的控件,但是要精通,却不是一个容易的事。
比例图片按钮,变色按钮,鼠标放上去会变图的按钮,圆的按钮,透明的按钮,要实现这些功能,却要学习其它好多的相关知识。

虽是一个小东西,但是却包含windows编程的精要。现在还要学习基础的吧:

Button的种类:

1.Push button基本按钮
2.Check Box 复选框
3.Radio Box单选框
4.GroupBox 组合框


按钮的实现有2常用的方法,一种是CreateWindow函数,一程是用资源来创建。我的TButton类当然要实现这2个功能。
1.用资源画的按钮,这个功能很方便,平时都用资源拖一个按钮,很方便。我打算放在TButton类的构造函数中实现:

PushButton类的定义:

PushButton类的实现


so ,我在创建按钮类时,可以使用以下代码来生成一个TButton类,

m_hwnd表示父亲窗口,IDC_BUTTON表示资源模板中创建的ID标识。
in this case 我要在我的TWnd 类中放一个按钮类成员,is so easy.

我的TWnd类,使用Create创建非模态窗口,用DoModal创建一个模状窗口,
需要在WM_INITDIALOG消息中初始化这些按钮控件,应为在2个函数之前,窗口还没有生成,所以只好再创建一个函数:
TWnd::OnInitCompoent()

在这个函数中初始化TButoon 成员类,TButton1 = new (m_hwnd,IDC_BUTTON_TEST);

在完成这个最简单的功能后,要实现一个最常用的功能,那就是设置按钮的文本和获取按钮的文件,加2个函数:
.设置按钮的文本,调用SetWindowText()API,可以很方便的实现







分享到:
评论

相关推荐

    新版Android开发教程.rar

    ----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...

    安卓(Android)期末课程设计-课堂记事本.zip

    - **Model类**:封装数据结构,如Note类存储笔记内容。 8. **版本控制**: - **Git**:版本控制系统,用于跟踪代码变更,便于团队协作。 9. **测试与优化**: - **单元测试**:确保各个模块的正确性。 - **...

    C#教程----快速入门

    以上是对C#教程中部分章节内容的详细总结,涵盖了C#语言基础、Windows编程基础知识以及常用控件和类的使用等方面的知识点。通过学习这些内容,开发者可以快速掌握C#编程的基本技能,并能够运用到实际的项目开发中去...

    vc6+Directshow+captureVideo摄像头编程开发笔记

    #### 四、DirectShow编程基础 DirectShow是Microsoft提供的一套多媒体开发框架,主要用于音频和视频流处理。它基于COM技术,提供了丰富的接口和类来控制多媒体设备。在使用DirectShow进行摄像头编程时,主要涉及以下...

    C#详细基础教程(推荐使用)

    ### C#基础教程知识点概述 ...以上是对《C#详细基础教程》主要内容的梳理,涵盖了C#语言的基础知识、Windows编程基础知识以及常用控件和类的使用,旨在帮助初学者系统地掌握C#语言的核心概念和技术要点。

    WPF 基础视频教程(共50集)-30.行为

    System.Windows.Interactivity命名空间是Expression Blend SDK的一部分,它提供了Interaction类,这个类提供了Attach和Detach方法,使得行为可以附加和移除到UI元素上。此外,它还包含了Trigger类,触发器允许根据...

    《Java从入门到精通》

    - **安装SUN公司的SDK**:安装Java Development Kit (JDK) 是开始Java编程的第一步,它包含了编译、调试和运行Java程序所需的工具。 - **一个Java程序的开发过程**:通常包括编辑源代码、编译、运行三个步骤。 - **...

    鸿蒙自学知识点demo java语言,包含所有基础知识应用,可以借助这个demo进行工具类封装

    4. **工具类封装**:学习如何将常用功能封装成工具类,如日期时间处理、字符串操作、网络请求处理、文件操作等。封装工具类可以提高代码的复用性,减少代码冗余,使得代码更加模块化和易于维护。 5. **事件监听和回...

    move-bin.zip_android

    2. **Java编程**: 作为主要的开发语言,理解面向对象编程的概念,如类、对象、继承、多态和封装,以及Android特定的Java库,如Android SDK的Activity、Intent等。 3. **Android Studio**: 开发环境,提供集成开发...

    java程序设计实践教程

    ### Java程序设计实践教程知识点概览 #### 一、Java 运行环境 - **概述:** 本章主要介绍了如何搭建Java...通过以上内容的学习,读者可以系统地掌握Java编程的基础知识和实践技能,为后续的软件开发打下坚实的基础。

    android应用程序开发流程要点借鉴.pdf

    - **面向对象编程思想**:Java是一种面向对象的语言,核心概念包括封装、继承和多态。在Android开发中,所有的应用程序都基于类和对象。 - **基本语法**:Java与C语言相比,在语法上有显著差异,如数据类型的定义...

    java实用教程

    - **面向对象编程**:强调数据和行为的封装。 **4.2 类** - **定义**:类是对象的模板,定义了一组共同属性和行为的对象集合。 - **组成部分**: - **成员变量**:类中的变量。 - **方法**:类中的函数。 - **...

    c#入门教程.docx

    ### C# 入门教程详解 #### 一、开发环境准备 **1.... - **Visual Studio 简介**: Visual Studio...通过上述步骤和知识点的学习,初学者可以逐步掌握 C# 编程的基础知识和进阶技能,为今后的软件开发工作打下坚实的基础。

    android应用程序开发流程要点.pdf

    - **面向对象编程思想**:Java是一种面向对象的语言,它强调封装、继承和多态等概念。在开发Android应用时,你需要理解类、对象、接口以及它们之间的关系。 - **JAVA语法与C语言对比**:Java的语法与C语言有所不同...

    语言-java-andriod翻译APP源代码.rar

    源代码中将展示面向对象编程(OOP)概念,如类、对象、继承、封装和多态性。同时,会涉及异常处理、集合框架、线程同步等核心Java特性。 2. **Android SDK**:Android软件开发工具包提供了构建Android应用所需的API...

    Java手机程序设计入门(上).

    本文将深入探讨Java在手机程序设计中的基础知识,帮助初学者建立起坚实的编程基础。 1. Java语言基础 - **语法结构**:Java是一种面向对象的语言,其语法与C++相似但更简洁,包括类、对象、方法、变量等概念。 - ...

    java手机程式设计入门.zip

    - **封装**:通过访问修饰符实现数据隐藏,保护类的内部状态。 - **继承**:一个类可以继承另一个类的特性,实现代码复用。 - **多态**:一个接口可以有多种不同的实现,允许在运行时动态绑定方法。 3. **异常...

Global site tag (gtag.js) - Google Analytics