Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V mezinárodních aplikacích se doporučuje použít náhradní písmo všude, kde je to možné. Záložní písmo znamená, že systém určuje, ke kterému skriptu znak patří.
Použití náhradního písma
Pokud chcete tuto funkci využít, nenastavujte vlastnost Font formuláře ani jiného prvku. Aplikace automaticky použije výchozí systémové písmo, které se liší od jednoho lokalizovaného jazyka operačního systému do jiného. Při spuštění aplikace systém automaticky poskytne správné písmo pro jazykovou verzi vybranou v operačním systému.
Existuje výjimka z pravidla nenastavovat písmo, a to pro změnu stylu písma. To může být důležité pro aplikaci, ve které uživatel klikne na tlačítko, aby se text v textovém poli zobrazoval tučně. Uděláte to tak, že napíšete funkci, která změní styl písma textového pole na tučné písmo na základě toho, co je písmo formuláře. Tuto funkci je důležité volat na dvou místech: v obslužné rutině události tlačítka Click a v obslužné rutině události FontChanged. Pokud je funkce volána pouze v obslužné rutině události Click a některá jiná část kódu změní rodinu písem celého formuláře, textové pole se nezmění se zbytkem formuláře.
Private Sub MakeBold()
' Change the TextBox to a bold version of the form font
TextBox1.Font = New Font(Me.Font, FontStyle.Bold)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
' Clicking this button makes the TextBox bold
MakeBold()
End Sub
Private Sub Form1_FontChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.FontChanged
' If the TextBox is already bold and the form's font changes,
' change the TextBox to a bold version of the new form font
If (TextBox1.Font.Style = FontStyle.Bold) Then
MakeBold()
End If
End Sub
private void button1_Click(object sender, System.EventArgs e)
{
// Clicking this button makes the TextBox bold
MakeBold();
}
private void MakeBold()
{
// Change the TextBox to a bold version of the form's font
textBox1.Font = new Font(this.Font, FontStyle.Bold);
}
private void Form1_FontChanged(object sender, System.EventArgs e)
{
// If the TextBox is already bold and the form's font changes,
// change the TextBox to a bold version of the new form font
if (textBox1.Font.Style == FontStyle.Bold)
{
MakeBold();
}
}
Při lokalizaci aplikace se však písmo tučným písmem může u určitých jazyků zobrazovat špatně. Pokud se jedná o problém, chcete, aby měli lokalizátoři možnost přepnout písmo z tučného na běžné. Vzhledem k tomu, že lokalizátory obvykle nejsou vývojáři a nemají přístup ke zdrojovému kódu, musí být tato možnost nastavená v souborech prostředků. Uděláte to tak, že vlastnost Bold nastavíte na true
. Výsledkem je uložení nastavení písma do souborů prostředků, kde jej lokalizátoři mohou upravovat. Poté napíšete kód po metodě InitializeComponent
, který obnoví písmo podle písma formuláře, ale použijete styl písma zadaný v souboru prostředků.
TextBox1.Font = New System.Drawing.Font(Me.Font, TextBox1.Font.Style)
textBox1.Font = new System.Drawing.Font(this.Font, textBox1.Font.Style);
Viz také
.NET Desktop feedback