如何开发一个没有背景,以便正确地显示我的背景图片一个ListView ...我”不能用这个来打通......如何创建透明ListView控件
1
A
回答
1
看一看this文章,并且有支持alpha混合的control library,您可能也可以将其扩展到ListView控件。
1
你这样做你会在win32中。
您所需要做的就是对控件进行子类化并覆盖WM_ERASEBKGND
窗口消息。您还可以覆盖消息WM_CTLCOLOR
以将文本模式设置为TRANSPARENT。
我已经在几乎所有的标准控件上做了这个,它工作正常。
更新:
这在MFC中启动例如,你仍然需要绘制背景上用某种方法控制。
class TransparentListView : public CListView
{
public:
TransparentListView();
virtual ~ToolsListCtrl();
protected:
afx_msg HBRUSH CtlColor(CDC* /*pDC*/, UINT /*nCtlColor*/);
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
private:
DECLARE_MESSAGE_MAP();
};
IMPLEMENT_DYNAMIC(TransparentListView , CListView)
TransparentListView::TransparentListView()
{
}
TransparentListView::~TransparentListView()
{
}
BEGIN_MESSAGE_MAP(TransparentListView, CListView)
ON_WM_CTLCOLOR_REFLECT()
ON_WM_ERASEBKGND()
END_MESSAGE_MAP()
HBRUSH TransparentListView::CtlColor(CDC* pDC, UINT /*nCtlColor*/)
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)GetStockObject(NULL_BRUSH);
}
BOOL TransparentListView::OnEraseBkgnd(CDC* pDC)
{
// You will need to force the drawing of the background here
// onto the pDC, there are lots of ways to do this.
// I've done it my having a pointer to a interface that
// draws the background image
return TRUE;
}
相关问题
- 1. 创建自定义透明控件
- 2. 如何在控件分层时在Windows窗体中创建透明控件
- 3. ListView透明度
- 4. 如何使用非透明边框创建透明UIView
- 5. 如何使用wxpython创建半透明/透明矩形?
- 6. 如何在非透明背景上创建透明文本
- 7. QML:如何创建半透明/半透明的WebView元素?
- 8. 动态创建ListView控件
- 9. 如何创建半透明面板
- 10. 如何创建一个透明的圆?
- 11. 如何创建一个透明的UIBarButtonItem?
- 12. 如何在cocos2d中创建透明ccscene?
- 13. 如何用透明背景创建uiview?
- 14. 如何创建透明的UITextField?
- 15. 如何创建透明背景?
- 16. 使控件透明
- 17. 透明子控件
- 18. 使控件透明
- 19. 如何使listview透明,但项目不透明?
- 20. 透明的ListView C#
- 21. 如何使CStatic控件(MFC)透明?
- 22. 如何在Android中使ListView透明?
- 23. 创建不透明标题
- 24. 创建透明圆柱体
- 25. WPF创建透明WriteableBitmap的
- 26. 创建透明箭头
- 27. 创建透明火焰
- 28. 创建透明面板
- 29. Winforms:如何在透明表单上获取透明控件的鼠标事件
- 30. ASP.net透明编辑控件
可以请你给这个方法更多的灯光你会很有帮助... – 2009-06-10 12:37:29