I noticed there was not an actual full code answer, so as i come across this, i have created a function, that does change the font, which can be easily modified. I have tested this in
— XP SP3 and Win 10 Pro 64
private void SetFont(Form f, string name, int size, FontStyle style)
{
Font replacementFont = new Font(name, size, style);
f.Font = replacementFont;
}
Hint: replace Form to either Label, RichTextBox, TextBox, or any other relative control that uses fonts to change the font on them. By using the above function thus making it completely dynamic.
/// To call the function do this.
/// e.g in the form load event etc.
public Form1()
{
InitializeComponent();
SetFont(this, "Arial", 8, FontStyle.Bold);
// This sets the whole form and
// everything below it.
// Shaun Cassidy.
}
You can also, if you want a full libary so you dont have to code all the back end bits, you can download my dll from Github.
Github DLL
/// and then import the namespace
using Droitech.TextFont;
/// Then call it using:
TextFontClass fClass = new TextFontClass();
fClass.SetFont(this, "Arial", 8, FontStyle.Bold);
Simple.
SHEPARD73 0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
||||
1 |
||||
08.01.2014, 13:15. Показов 116714. Ответов 20 Метки нет (Все метки)
Народ каким образом мне сделать прорисовку или что то другое, похожее на
чтобы мне можно было сделать конструктор для изменения цвета и шрифта label’а?
0 |
zna926 547 / 478 / 315 Регистрация: 24.09.2013 Сообщений: 3,345 Записей в блоге: 1 |
||||
08.01.2014, 19:32 |
2 |
|||
0 |
SHEPARD73 0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
||||
08.01.2014, 23:59 [ТС] |
3 |
|||
Я с этим разобрался, а теперь мне нужно как-то задать размер шрифта, задаю так
но почему то ошибка «доступно только для чтения», как исправить?
0 |
547 / 478 / 315 Регистрация: 24.09.2013 Сообщений: 3,345 Записей в блоге: 1 |
|
09.01.2014, 02:30 |
4 |
Так задуман код, что можно только получить , а не установливать значение. Установка значения в свойствах и там еще выбор шрифта жирный, наклонный и т.д.
0 |
lpvoid 324 / 307 / 59 Регистрация: 06.03.2013 Сообщений: 869 |
||||
09.01.2014, 07:53 |
5 |
|||
SHEPARD73,
System.Drawing.Font
0 |
SHEPARD73 0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
||||
09.01.2014, 19:34 [ТС] |
6 |
|||
А как потом изменять размер, т.е. задавать что-вроде
не получается ?
0 |
Заблокирован |
||||
09.01.2014, 19:39 |
7 |
|||
SHEPARD73, вам же написали
label1.Font = new Font(название, размер, стиль);
w — размер шрифта.
1 |
0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
|
10.01.2014, 16:06 [ТС] |
8 |
Я имел ввиду как мне добавить свойство для изменения размера, я же не могу ковертировать все это в числовой тип?
0 |
Заблокирован |
|
11.01.2014, 22:20 |
9 |
я же не могу ковертировать все это в числовой тип? Он изначально предполагался, что будет числовой или это не так?
0 |
0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
|
12.01.2014, 15:15 [ТС] |
10 |
Он изначально предполагался, что будет числовой или это не так? При конвертации в числовой тип появляется ошибка: неявное преобразование типа int в string
0 |
Заблокирован |
||||
12.01.2014, 15:24 |
11 |
|||
SHEPARD73, я вас понять не могу. на форму я кинул TB, туда пишу размер шрифта и на кнопку, такой код
0 |
SHEPARD73 0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
||||
12.01.2014, 16:42 [ТС] |
12 |
|||
Release, Я хочу чтобы через панель свойства можно было задавать ширину текста в label, должно быть что то вроде
но данное свойство изменяет ширину самого label, а не текста
0 |
Заблокирован |
|
12.01.2014, 17:16 |
13 |
lab1.Width = value; ну так? нужно к Font обращаться. По этому вопросу не могу подсказать.
0 |
Администратор 9414 / 4700 / 759 Регистрация: 17.04.2012 Сообщений: 9,544 Записей в блоге: 14 |
|
12.01.2014, 17:20 |
14 |
SHEPARD73, объясните, что вы имеете в виду под «шириной текста»?
0 |
0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
|
12.01.2014, 20:22 [ТС] |
15 |
SHEPARD73, объясните, что вы имеете в виду под «шириной текста»? пространство между буквами, а также высоту букв
0 |
zna926 547 / 478 / 315 Регистрация: 24.09.2013 Сообщений: 3,345 Записей в блоге: 1 |
||||
12.01.2014, 21:37 |
16 |
|||
1 |
0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
|
13.01.2014, 22:44 [ТС] |
17 |
zna926,
0 |
zna926 547 / 478 / 315 Регистрация: 24.09.2013 Сообщений: 3,345 Записей в блоге: 1 |
||||
14.01.2014, 00:17 |
18 |
|||
label1.Font = new Font(«Tobota», 14, FontStyle.Italic);
0 |
SHEPARD73 0 / 0 / 0 Регистрация: 22.12.2013 Сообщений: 48 |
||||
14.01.2014, 00:31 [ТС] |
19 |
|||
zna926,
0 |
547 / 478 / 315 Регистрация: 24.09.2013 Сообщений: 3,345 Записей в блоге: 1 |
|
14.01.2014, 01:02 |
20 |
Как я понял нужно, чтобы ширина шрифта менялась независимо от его размера.
0 |
I noticed there was not an actual full code answer, so as i come across this, i have created a function, that does change the font, which can be easily modified. I have tested this in
— XP SP3 and Win 10 Pro 64
private void SetFont(Form f, string name, int size, FontStyle style)
{
Font replacementFont = new Font(name, size, style);
f.Font = replacementFont;
}
Hint: replace Form to either Label, RichTextBox, TextBox, or any other relative control that uses fonts to change the font on them. By using the above function thus making it completely dynamic.
/// To call the function do this.
/// e.g in the form load event etc.
public Form1()
{
InitializeComponent();
SetFont(this, "Arial", 8, FontStyle.Bold);
// This sets the whole form and
// everything below it.
// Shaun Cassidy.
}
You can also, if you want a full libary so you dont have to code all the back end bits, you can download my dll from Github.
Github DLL
/// and then import the namespace
using Droitech.TextFont;
/// Then call it using:
TextFontClass fClass = new TextFontClass();
fClass.SetFont(this, "Arial", 8, FontStyle.Bold);
Simple.
Windows Forms — это набор инструментов разработки графического интерфейса пользователя в Microsoft .NET Framework. Один из важных аспектов создания приложений с использованием Windows Forms — это возможность гибко настраивать форматирование текста. В этой статье будет рассмотрено, как изменить шрифты, цвета и стили текста в Windows Forms с помощью простых методов.
Изменение шрифта текста
Изменение шрифта текста в Windows Forms можно сделать с использованием класса Font
. Прежде всего, необходимо создать экземпляр класса Font
, указав имя шрифта, его размер и необязательные параметры, такие как стиль и еще несколько настроек. Затем, можно установить новый шрифт для выбранного элемента управления, используя свойство Font
.
Font font = new Font("Arial", 12, FontStyle.Bold); // Создание нового шрифта
label1.Font = font; // Применение шрифта к элементу Label
Изменение цвета текста
В Windows Forms предоставляется возможность изменять цвет текста для различных элементов управления. Цвета можно задать с использованием класса Color
или выбрать из предопределенного списка цветов. Пример ниже показывает, как изменить цвет текста в элементе Label
.
label1.ForeColor = Color.Red; // Установка красного цвета текста
Изменение стиля текста
Windows Forms также позволяет изменять стиль текста элементов управления, таких как кнопки, метки и текстовые поля. Стиль текста можно настроить с использованием перечисления FontStyle
, которое предоставляет различные опции форматирования, такие как жирный, курсив и подчеркнутый.
label1.Font = new Font(label1.Font, FontStyle.Bold | FontStyle.Italic); // Установка жирного и курсивного стиля текста
Вывод
Изменение формата текста в Windows Forms — это простая задача благодаря классам Font
, Color
и перечислению FontStyle
. Разработчики могут легко настраивать шрифты, цвета и стили текста для различных элементов управления в своих приложениях. Это предоставляет возможность создавать эстетически приятные и пользовательские интерфейсы, повышая удобство использования приложений.
In Windows forms, TextBox plays an important role. With the help of TextBox, the user can enter data in the application, it can be of a single line or of multiple lines. In TextBox, you are allowed to change the font of the content present in the TextBox with the help of Font property which makes your textbox more attractive. In Windows form, you can set this property in two different ways: 1. Design-Time: It is the simplest way to set the Font property of the TextBox. As shown in the following steps:
2. Run-Time: It is a little bit trickier than the above method. In this method, you can set the Font property of the TextBox programmatically with the help of given syntax:
public virtual System.Drawing.Font Font { get; set; }
Here, Font is used to represent the font applied to the content of the TextBox. Following steps are used to set the Font property of the TextBox:
- Step 1 : Create a textbox using the TextBox() constructor provided by the TextBox class.
// Creating textbox TextBox Mytextbox = new TextBox();
- Step 2 : After creating TextBox, set the Font property of the TextBox provided by the TextBox class.
// Set Font property Mytextbox.Font = new Font("Broadway", 12);
- Step 3 : And last add this textbox control to form using Add() method.
// Add this textbox to form this.Controls.Add(Mytextbox);
- Example:
CSharp
using
System;
using
System.Collections.Generic;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Linq;
using
System.Text;
using
System.Threading.Tasks;
using
System.Windows.Forms;
namespace
my {
public
partial
class
Form1 : Form {
public
Form1()
{
InitializeComponent();
}
private
void
Form1_Load(
object
sender, EventArgs e)
{
Label Mylablel =
new
Label();
Mylablel.Location =
new
Point(96, 54);
Mylablel.Text = "Enter Name";
Mylablel.AutoSize =
true
;
Mylablel.BackColor = Color.LightGray;
this
.Controls.Add(Mylablel);
TextBox Mytextbox =
new
TextBox();
Mytextbox.Location =
new
Point(187, 51);
Mytextbox.BackColor = Color.LightGray;
Mytextbox.AutoSize =
true
;
Mytextbox.Name = "text_box1";
Mytextbox.CharacterCasing = CharacterCasing.Upper;
Mytextbox.Font =
new
Font("Broadway", 12);
this
.Controls.Add(Mytextbox);
}
}
}
- Output:
Last Updated :
20 Apr, 2023
Like Article
Save Article