如何開發一個沒有背景,以便正確地顯示我的背景圖片一個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