zoukankan      html  css  js  c++  java
  • 编写ATL控件的简单做法

    作者:朱金灿

    来源:http://blog.csdn.net/clever101

     

            ATL并不像MFC库那样提供了很多的控件窗口类,因此要使用ATL的话需要自己去封装。封装的做法很简单。比如现在我需要一个列表控件,可以这样进行封装。首先新建一个C++类:CMiniComboBox,它派生自ATL::CWindow,代码如下:

    // MiniComboBox.h
    
    #pragma once
    
    #include <atlctl.h>
    
    class CMiniComboBox:public ATL::CWindow
    {
    public:
    
    	// 在ComboBox中添加一个下拉项
    	LRESULT AddString( LPCTSTR lpszString );
    
    	virtual ~CMiniComboBox(void);
    };
    
    // MiniComboBox.cpp
    
    #include "stdafx.h"
    #include "MiniComboBox.h"
    
    
    CMiniComboBox::~CMiniComboBox(void)
    {
    }
    
    LRESULT CMiniComboBox::AddString( LPCTSTR lpszString )
    {
       return ::SendMessage( m_hWnd, CB_ADDSTRING, 0, (LPARAM)lpszString );
    }
    
    

           在ATL对话框框类中这样使用:

    CMiniComboBox cmbLan;
    	cmbLan.Attach(GetDlgItem(IDC_CMB_LANGUAGE)); 
    	cmbLan.AddString(_T("C++"));
    	cmbLan.AddString(_T("C#"));
    

    参考文献:

    1. ATL/WTL 对话框和控件






  • 相关阅读:
    奇数
    简单的登录基于代码的
    偶数
    寻找特定的值
    'k1': 大于66的所有值, 'k2': 小于66的所有值
    差数和
    day1
    页面滑动监听
    jq的ajax初级使用
    在vue中引入swiper
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6470314.html
Copyright © 2011-2022 走看看