Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [ Graphics ] Текст 
:(
    Опции темы
Real
Дата 9.1.2008, 01:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 507
Регистрация: 9.11.2007

Репутация: 1
Всего: -1



Как по центру текст разместить?
Код

Graphics gr = e.Graphics;
gr.DrawString("Helow",new Font("Arial",5),Brushes.Red,50,60);

PM   Вверх
VisualProgrammerNET
Дата 9.1.2008, 02:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Почётный халявщик
**


Профиль
Группа: Участник
Сообщений: 461
Регистрация: 30.10.2005
Где: Зеленоград

Репутация: 4
Всего: 6



высчитать координаты центра и вычесть половину длины строки


--------------------
3 ГОДА НА user posted image 
PM MAIL ICQ   Вверх
mr.DUDA
Дата 9.1.2008, 09:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Одних координат (50,60) мало. Для выравнивания по центру нужно определить прямоугольную область, в которой центрируется текст.  Само выравнивание задаётся с помощью StringFormat, кстати там же можно указать и выравнивание по вертикали (LineAlignment).
Код
                StringFormat fmt = new StringFormat(StringFormat.GenericDefault);
                fmt.Alignment = StringAlignment.Center;

                Rectangle rect = new Rectangle(50, 60, 100, 30); // ширина 100, высота 30

                gr.DrawString("Helow", new Font("Arial", 5), Brushes.Red, rect, fmt);




--------------------
user posted image
PM MAIL WWW   Вверх
Real
Дата 9.1.2008, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 507
Регистрация: 9.11.2007

Репутация: 1
Всего: -1



А как можна взять  размер формы из системы?

Это сообщение отредактировал(а) Real - 9.1.2008, 15:09
PM   Вверх
farad
Дата 9.1.2008, 15:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 199
Регистрация: 1.11.2007

Репутация: -1
Всего: 6



Свойство формы ClientRectangle
PM MAIL   Вверх
Real
Дата 9.1.2008, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 507
Регистрация: 9.11.2007

Репутация: 1
Всего: -1



Код

Rectangle rect = new Rectangle(50, 60, 100, 30);

50, 60, 100, 30 за что отвечают эти координаты?
PM   Вверх
mr.DUDA
Дата 9.1.2008, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

Репутация: 110
Всего: 232



Real, в хелпе же написано: left, top, width, height. Что в переводе означает "левая и верхняя граница, ширина и высота".


--------------------
user posted image
PM MAIL WWW   Вверх
Real
Дата 9.1.2008, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 507
Регистрация: 9.11.2007

Репутация: 1
Всего: -1



Типа так
            
Код

            int x = 24;
            Graphics gr = e.Graphics;
            StringFormat fmt = new StringFormat(StringFormat.GenericDefault);
            fmt.Alignment = StringAlignment.Center;
            Rectangle rect = new Rectangle(ClientRectangle.Size.Width / 4, (ClientRectangle.Size.Height /2)-x/2, ClientRectangle.Size.Width / 2 , (ClientRectangle.Size.Height/2)-x/2); // ширина 100, высота 30
            gr.DrawString("Helow", new Font("Arial", x), Brushes.Red, rect, fmt);

PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0867 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.