duilib 自定义HWND窗口显示控件

 

0 自定义控件原因:

duilib已经写了许多基本控件,但是需求总是多样的,要满足这些需求,就得自定义控件

比如,显示窗口快照的控件

duilib 自定义HWND窗口显示控件_第1张图片

这里,窗口是通过HWND 直接绘制在控件中的,而不是通过设置背景图的方式。

 

1 自定义控件类

 我要自定义的控件,是显示HWND窗口图,不涉及子控件,因此,只要继承自Control控件就可以了

 1.1)继承原控件类

//HWND bmp
#ifndef _UIHBITMAPCONTROL_H_
#define _UIHBITMAPCONTROL_H_
#pragma once

namespace ui
{
	class CHBitmapControl :
		public ui::Control
	{
	public:
		CHBitmapControl();
		~CHBitmapControl();



		void SetHBitmap(HBITMAP h)
		{
			hBitmap_ = h;
		}

		void SetHWND(HWND hWnd)
		{
			hWnd_ = hWnd;
		}

		void SetArea(

你可能感兴趣的:(duilib)