"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment créer un contrôle circulaire translucide avec du texte en C #?

Comment créer un contrôle circulaire translucide avec du texte en C #?

Publié le 2025-01-29
Parcourir:353

How to Create a Translucent Circular Control with Text in C#?

C # Contrôle de texte circulaire translucide

Cet article résoudra un problème commun: comment créer un contrôle circulaire avec du texte et expliquer comment surmonter les défis tels que la transparence et l'ajustement de la taille.

question

Le défi initial est de créer un cercle avec la même largeur carrée que la connexion intérieure. Le réglage de la taille circulaire entraînera un chevauchement avec d'autres commandes. De plus, le contexte du contrôle doit être transparent.

Solution

Afin d'atteindre la transparence, nous avons créé un contrôle personnalisé à partir de la classe de contrôle. L'interface contient un cercle coloré qui peut afficher le texte. Le contrôle révèle les attributs personnalisés pour régler l'opacité, le remplissage interne (distance entre les rectangles internes et la limite de contrôle) et le remplissage de police (distance entre le texte et les rectangles internes). Afin de rendre le contrôle transparent, nous avons réécrit la méthode de CreateParams et définie son exstyle sur ws_ex_transparent.

style personnalisé

Nous utilisons la méthode Control.SetStyle () pour modifier le comportement de contrôle en ajoutant ControlStyles:

ControlStyles.opaque:

Empêcher l'arrière-plan de dessin de fond pour éviter la gestion du système.

ControlStyles.SupportstransparentBackColor:
    Autoriser le contrôle à accepter la valeur alpha pour sa couleur d'arrière-plan.
  • Gire les incidents de souris
  • Le contrôle prend en charge les événements de souris pour faire glisser et ajuster la taille. Processus de police
Le code dur de la police est Segoe UI, qui simplifie le positionnement du texte au milieu de la zone circulaire. D'autres polices ont des lignes de base différentes et doivent être plus compliquées.

Code complet

C # Contrôle personnalisé Le code complet a été fourni.

Contrôle d'application Pour utiliser ce contrôle, veuillez créer un nouveau fichier de classe, coller le code fourni, puis créer un projet. Le contrôle personnalisé apparaîtra dans la boîte à outils. Faites-le glisser vers la fenêtre et ajustez ses attributs personnalisés au besoin.

En conséquence, un contrôle circulaire translucide avec du texte peut être localisé et ajusté sans chevauchement avec d'autres contrôles.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3