Promjena svojstava fonta u VB.NET

click fraud protection

Bold je "samo za čitanje" u VB.NET-u. Ovaj članak govori o tome kako to promijeniti.

U VB6 bilo je lako promijeniti font u podebljan. Jednostavno ste kodirali nešto slično Label1.FontBold, ali u VB.NET-u, svojstvo Bold objekta Font za oznaku je samo za čitanje. Pa kako to promijeniti?

Promjena svojstava fonta u VB.NET-u uz Windows Forms

Evo osnovnog uzorka koda za Windows Forms.

Privatni Sub BoldCheckbox_CheckedChanged (_
ByVal pošiljalac kao sustav. Objekt, _
ByVal e kao sustav. EventArgs) _
Rukuje BoldCheckbox. CheckedChanged
Ako BoldCheckbox. CheckState = CheckState. Provjereno tada
TextToBeBold. Font = _
Novi font (TextToBeBold). Font, FontStyle. bold)
Drugo
TextToBeBold. Font = _
Novi font (TextToBeBold). Font, FontStyle. redovna)
Završi ako
Kraj Sub

Ima puno više od toga Label1.FontBold, to je sigurno. U .NET-u su fontovi nepromjenjivi. To znači da jednom kada su stvorene ne mogu se ažurirati.

VB.NET vam daje veću kontrolu nego što ste dobili s njim VB6 više od onoga što vaš program radi, ali trošak je da morate napisati kod da biste dobili tu kontrolu. VB6 će interno izbaciti jedan resurs GDI fonta i stvoriti novi. S VB.NET-om to morate učiniti sami.

instagram viewer

Možete stvari učiniti malo globalnijima dodavanjem globalne deklaracije na vrh obrasca:

Privatni fBold kao novi font ("Arial", FontStyle. bold)
Privatni fNormal kao novi font ("Arial", FontStyle. redovna)

Tada možete kodirati:

TextToBeBold. Font = fBold

Imajte na umu da globalna deklaracija sada određuje obitelj fontova, Arial, umjesto da jednostavno upotrebljava postojeću obitelj fontova jedne određene kontrole.

Korištenje WPF-a

Što je sa WPF-om? WPF je grafički podsustav koji možete koristiti s .NET Framework za izradu aplikacija na kojima je zasnovano korisničko sučelje na XML jeziku pod nazivom XAML i kôd je odvojen od dizajna i temelji se na .NET jeziku kao što je Visual Osnovni, temeljni. U WPF-u Microsoft je postupak opet izmijenio. Evo načina na koji radite istu stvar u WPF-u.

Privatni Sub BoldCheckbox_Checked (_
ByVal pošiljalac kao sustav. Objekt, _
ByVal e kao sustav. Windows. RoutedEventArgs) _
Rukuje BoldCheckbox. provjeren
Ako BoldCheckbox. IsChecked = Istina tada
TextToBeBold. FontWeight = FontWeights. odvažan
Drugo
TextToBeBold. FontWeight = FontWeights. normalan
Završi ako
Kraj Sub

Promjene su:

  • CheckBox događaj se provjerava umjesto CheckedChanged
  • Svojstvo CheckBox je IsChecked umjesto CheckState
  • Vrijednost svojstva je logična vrijednost True / False umjesto Enum CheckState-a. (Windows Forms nudi svojstvo True / False Checked pored CheckState-a, ali WPF nema oba.)
  • FontWeight je svojstvo ovisnosti Label, a umjesto FontStyle je vlasništvo objekta Font.
  • FontWeights je klasa koja se ne može naslijediti, a Bold je statička vrijednost u toj klasi

Fijuk!! Mislite li da je Microsoft zapravo pokušao to učiniti više zbunjujućim?

instagram story viewer