Comment développer un ListView qui n'a pas de fond pour que mon image d'arrière-plan est affiché correctement ... Je ne peut pas passer à travers cette ...Comment créer Transparent contrôle ListView
1
A
Répondre
1
Jetez un oeil à this article et il existe un control library qui prend en charge alpha blending que vous pourriez également étendre au contrôle ListView.
1
Vous le faites de la même manière que dans win32.
Tout ce que vous devez faire est de sous-classer le contrôle et remplacer le message de fenêtre WM_ERASEBKGND
. Vous pouvez également remplacer le message WM_CTLCOLOR
pour définir le mode texte sur TRANSPARENT.
Je l'ai fait sur presque tous les contrôles standard et cela fonctionne très bien.
Mise à jour:
Cet exemple à partir de MFC, vous devez toujours dessiner l'arrière-plan sur le contrôle par une méthode.
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;
}
Questions connexes
- 1. Generics ListView contrôle personnalisé
- 2. Pagination dans asp.net contrôle Listview
- 3. C# dragdrop du contrôle listview
- 4. C# Winforms Contrôle Transparent permettant le Clic
- 5. Le contrôle statique n'est pas transparent + MFC
- 6. Paging dans le contrôle listview
- 7. Comment créer un UITableViewCell avec un fond transparent
- 8. C# Transparent GUI
- 9. Fond transparent - pas complètement transparent
- 10. Comment créer un formulaire Windows semi-transparent comme Microsoft Office 2010 TP?
- 11. Case à cocher dans le contrôle listview
- 12. Le contrôle ListView se charge très lentement
- 13. Le contrôle ListView ne fonctionne pas
- 14. Contrôle ListView avec capacités de pagination
- 15. créer une vignette de taille fixe dynamiquement sur le contrôle listview
- 16. Fond de panneau semi-transparent
- 17. Comment rendre un fond MdiClient transparent?
- 18. Rendre un contrôle "transparent" pour cliquer sur les événements
- 19. Création d'un panneau transparent
- 20. Créer un curseur semi-transparent à partir d'une image
- 21. Comment créer un contrôle SysHeader32 en C#?
- 22. Comment créer un contrôle gridview personnalisé?
- 23. Puis-je créer un ListView avec un GroupItemCount dynamique?
- 24. Comment effacer les graphiques sur un contrôle transparent dans les formulaires Windows
- 25. Dessin de lignes horizontales et verticales dans le contrôle listview
- 26. Bitmap transparent
- 27. Accéder à un contrôle à l'intérieur d'un LayoutTemplate d'un ListView
- 28. Menu contextuel de copie pour le contrôle ListView
- 29. AWTUtilities Transparent JFrame
- 30. C# Alpha Blend Transparent PictureBox
Pouvez-vous s'il vous plaît donner plus de lumière sur cette méthode de votre serait très utile ... –
réponse Mise à jour par exemple. –