ボタンのフォントをシステムのMarlettフォントに設定しようとしています。しかし、私は手動でfont-faceを設定しますが、他のフォントが使用されます。また、フォントダイアログを使用してそのボタンのフォントを選択すると、Marlettは表示されません。ボタンのフォントをMarlettに設定するには
なぜそうですか? .NET WindowsフォームコントロールでMarlettフォントを使用するには何ができますか?
ボタンのフォントをシステムのMarlettフォントに設定しようとしています。しかし、私は手動でfont-faceを設定しますが、他のフォントが使用されます。また、フォントダイアログを使用してそのボタンのフォントを選択すると、Marlettは表示されません。ボタンのフォントをMarlettに設定するには
なぜそうですか? .NET WindowsフォームコントロールでMarlettフォントを使用するには何ができますか?
をこのコードを置きますカスタムインストールされたフォントは、デザイナーにが表示されません。良いニュースは、Font
プロパティがアンビエントなので、すべてのコントロールに同じFont
を設定したい場合は、のみをForm
に設定する必要があります。しかし、それはあなたがちょうど1つの制御がFont
はそうはこのやろうがしたいように思える:設定されます
ctrl.Font = new Font("Marlett", 8.5f);
そのコントロールのFont
Marlett
に例えば8.5
のサイズ。彼らはPanel
状の容器に入れることができるならば、あなたが同じFont
、を持っているコントロールのセット全体を望んでいた場合
、その後、あなただけのPanel
のFont
設定する必要があります。もう一度、周囲のプロパティです。
Marlettは、最小化、最大化、閉じる、スクロールバーの矢印などのようなグリフ付きの組み込みフォントです。デザイナーはそれを正しく設定しません(手動でフォント名を入力したとしても)。ありがとう! – Spook
@ Spook、私は本当に助けになることができてうれしいです! –
button1.Font = new Font("Marlett",8, FontStyle.Regular);
は、私はデザイナーの背後にあるどのようなコードを知りませんが、私は持っているあなたが(iinitializecomponet後またはフォームのLoadイベントでconstrcutorからで)変更をしたいあなたのボタン名Button1を、用
デザイナーはデフォルトでGdiCharSetを0に設定したいと思われるでしょう。これにより、Marlettフォントは別のフォントにフォールバックされます。
GdiCharSetを1に変更すると、正常にレンダリングされます。
.designer.csで行われた変更にも注意してください。これは、コードから手動でフォントを設定するときに、なぜ機能したのかについても説明します。
マシンにフォントがインストールされていますか? –
はい、私はそれが肯定的です。 – Spook
[OK]をクリックして、質問をし、 'Font'を設定するために使用しているコードを追加してください(http://stackoverflow.com/questions/16191751/edit)。 –