笔记mfc11

ops/2024/11/27 21:16:04/

Subclass(子类化)是MFC中最常用的窗体技术之一。子类化完成两个工作:一是把窗体类对象attach到一个windows窗体实体中(即把一个窗体的hwnd赋给该类)。另外就是把该类对象的消息加入到消息路由中,使得该类可以捕获消息。

让edit能够消息路由

    if (m_pEdit == NULL)
    {
        m_pEdit = new CEdit();
        m_pEdit->SubclassWindow(GetDlgItem(1001)->GetSafeHwnd());
    }

  1. 通知消息(Notification Messages)
    CEdit控件会发送各种通知消息给其父窗口,例如EN_CHANGE(当文本改变时)、EN_KILLFOCUS(当控件失去焦点时)等。这些通知消息不是WM_COMMAND消息,但你可以通过消息映射来处理它们,就像处理WM_COMMAND消息一样。

这行代码将之前创建的CEdit对象与实际的编辑控件窗口关联起来。SubclassWindow函数是MFC中用于子类化窗口的函数,它将CEdit对象的消息处理机制附加到现有的窗口上。这样,当窗口接收到消息时,CEdit对象的消息处理函数就会被调用。


http://www.ppmy.cn/ops/137175.html

相关文章

python tkinter 控件实现鼠标悬停提示,提示文本动态展示

展示效果 全部代码和使用示例 # _*_ coding:utf-8 _*_ import tkinter as tk import pyautoguiscreen_width, screen_height pyautogui.size()class WidgetTip:"""鼠标悬停提示"""def __init__(self, widget, text):self.widget widgetself.…

刘铁猛C#入门 026 重写与多态

类的继承 类成员的“横向扩展”(成员越来越多)类成员的“纵向扩展”(行为改变,版本增高)类成员的隐藏(不常用)重写与隐藏的发生条件:函数成员,可见,签名一致 函数成员:方法 、属性可见:父类修饰符是public protected …

决策树 DecisionTreeClassifier() 模型参数介绍

DecisionTreeClassifier() 是 scikit-learn 库中的决策树分类器,它有几个关键参数,用于控制模型的行为和性能。以下是其中一些重要的参数: criterion:用于划分节点的标准,可以是 ’gini’(基尼指数&#xf…

naiveui 在 nuxt 中使用 css 资源首次未加载

naiveui 在 nuxt 中使用 css 资源首次未加载 我真的被气死,最近在最 nuxt 开发,ui 库使用的是 naiveui 然后我使用的过程中发现每一次我刷新页面的时候我页面出现的时候都没有 css 样式但是过一会就出现了 css 样式,我真的被气死了&#xff…

Python 版本的 2024详细代码

2048游戏的Python实现 概述: 2048是一款流行的单人益智游戏,玩家通过滑动数字瓷砖来合并相同的数字,目标是合成2048这个数字。本文将介绍如何使用Python和Pygame库实现2048游戏的基本功能,包括游戏逻辑、界面绘制和用户交互。 主…

Transformer.js(五) — Tokenizer 分词器接口解析 - 数据输入的咀嚼器

在之前的文章 前端大模型入门:编码(Tokenizer)和嵌入(Embedding)解析 - llm的输入中,我简单对比了下tokenizer和splitter的区别,以及其功能,让大家对分词器有了初步的认识。本篇文章中,我将带领大家深入探讨 transform…

macOS上进行Ant Design Pro实战教程(一)

由于一个AI项目的前端使用了umi,本教程根据阿里官网上的 《Ant Design 实战教程(beta 版)》来实操一下,我使用macOS操作系统,VS Code 开发环境。 一、开发环境 1、安装nodejs, npm, yarn 官网上建议使用cnpm&#xf…

Spring Boot项目中,实体类是否需要实现Serializable接口

在Spring Boot项目中,实体类是否需要实现Serializable接口并不是一个硬性规定,而是取决于具体的应用场景和需求。以下是对这一问题的更详细分析: 1. 序列化的基本概念 序列化是将对象的状态信息转换为可以存储或传输的形式的过程。反序列化则…