Zmena vlastností písma vo VB.NET

Tučné písmo je vo formáte VB.NET „len na čítanie“. V tomto článku sa dozviete, ako to zmeniť.

Vo VB6 bolo ľahké zmeniť písmo na tučné písmo. Jednoducho ste niečo kódovali Label1.FontBold, ale vo VB.NET je vlastnosť Bold objektu Font pre štítok iba na čítanie. Ako to teda zmeniť?

Zmena vlastností písma vo VB.NET pomocou formulárov Windows

Toto je základný vzor kódu pre Windows Forms.

Súkromné ​​Sub BoldCheckbox_CheckedZmenené (_
ByVal odosielateľ ako systém. Objekt, _
ByVal e As System. EventArgs) _
Rukoväte BoldCheckbox. CheckedChanged
Ak je BoldCheckbox. CheckState = CheckState. Potom začiarknuté
TextToBeBold. Písmo = _
Nové písmo (TextToBeBold. Písmo, typ písma. tučne)
inak
TextToBeBold. Písmo = _
Nové písmo (TextToBeBold. Písmo, typ písma. pravidelné)
Koniec Ak
End Sub

Je toho omnoho viac Label1.FontBold, to je isté. V prostredí .NET sú písma nemenné. To znamená, že keď sa vytvoria, nemôžu sa aktualizovať.

VB.NET vám poskytuje väčšiu kontrolu, ako s ňou získate VB6 nad tým, čo robí váš program, ale cena je, že musíte napísať kód, aby ste získali kontrolu. VB6 interne zruší jeden zdroj písma GDI a vytvorí nový. S VB.NET to musíte urobiť sami.

instagram viewer

Môžete urobiť veci trochu globálnejšími pridaním globálnej deklarácie v hornej časti formulára:

Súkromné ​​fBold As New Font ("Arial", FontStyle. tučne)
Súkromné ​​fNormálne ako nové písmo („Arial“, FontStyle. pravidelné)

Potom môžete zadať kód:

TextToBeBold. Font = fBold

Všimnite si, že globálna deklarácia teraz špecifikuje rodinu písiem Arial, namiesto jednoduchého použitia existujúcej rodiny písiem jedného konkrétneho ovládacieho prvku.

Používanie WPF

A čo WPF? WPF je grafický subsystém, ktorý môžete použiť s .NET Framework na vytváranie aplikácií, na ktorých je založené užívateľské rozhranie v jazyku XML s názvom XAML a kód je oddelený od dizajnu a je založený na jazyku .NET ako Visual Základné. V WPF Microsoft zmenil proces ešte raz. Takto robíte to isté vo WPF.

Súkromné ​​Sub BoldCheckbox_Checked (_
ByVal odosielateľ ako systém. Objekt, _
ByVal e As System. Windows. RoutedEventArgs) _
Rukoväte BoldCheckbox. kontrolované
Ak je BoldCheckbox. IsChecked = True then then
TextToBeBold. FontWeight = FontWeights. smelý
inak
TextToBeBold. FontWeight = FontWeights. normálne
Koniec Ak
End Sub

Zmeny sú:

  • Udalosť CheckBox je začiarknutá namiesto CheckedChanged
  • Vlastnosť CheckBox je Is Checked namiesto CheckState
  • Hodnota vlastnosti je boolovský True / False namiesto Enum CheckState. (Windows Forms ponúka okrem služby CheckState vlastnosť True / False Checked, ale WPF nemá oboje.)
  • FontWeight je vlastnosť závislosti Label namiesto FontStyle, ktorá je vlastnosťou objektu Font.
  • FontWeights je trieda NotInheritable a Bold je statická hodnota v tejto triede

Páni!! Myslíte si, že sa spoločnosť Microsoft skutočne pokúsila urobiť ju mätúcou?