Вертикальное центрирование в Label

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
karenura2
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 11.02.2013 (Пн) 6:45

Вертикальное центрирование в Label

Сообщение karenura2 » 12.02.2013 (Вт) 10:25

Здравствуйте.
Кто-нибудь знает можно ли центрировать текст в Label по высоте.
Если да , то как?

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Вертикальное центрирование в Label

Сообщение ger_kar » 13.02.2013 (Ср) 7:38

В стандартном этого сделать нельзя, можно центрировать только по горизонтали.
Поэтому если уж так нужно центрировать по вертикали можно использовать другие контролы.
Здесь точно есть то что надо, нужно просто немного поискать
Бороться и искать, найти и перепрятать

karenura2
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 11.02.2013 (Пн) 6:45

Re: Вертикальное центрирование в Label

Сообщение karenura2 » 13.02.2013 (Ср) 11:03

ger_kar писал(а):В стандартном этого сделать нельзя, можно центрировать только по горизонтали.
Поэтому если уж так нужно центрировать по вертикали можно использовать другие контролы.
Здесь точно есть то что надо, нужно просто немного поискать

Вертикальный Label есть, но все равно не тот.Да можно делать вертикальные надписи.
Мне он нужен не для этого.У меня форма выполняет функцию табло.На ней размещены Labelы,
которые отображают время.Одна еденицы секунд,другая десятки ,третья минуты и т.д.
Эта форма должна выводиться на отдельный монитор ,на который расширен рабочий стол бука.
Мониторы естесственно разные по размеру.Поэтому в Resize формы предусмотрел возможность изменять ее раз-
мер с изменением размеров и расположения Label и размера шрифта.Так вот при больших
размерах шрифта цифра в Label обрезается снизу , хотя сверху куча свободного места.Это
происходит и в старом контроле и в том ,который вы порекомендовали.Конечно в коде
можно задать ограничения по изменению шрифта и он обрезаться не будет , но табло
будет выглядеть не очень.Цифры будут располагаться не по центру.
Другой контрол использовать?Ну еще можно Text , но у него тоже самое происходит.

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Вертикальное центрирование в Label

Сообщение ger_kar » 13.02.2013 (Ср) 11:09

karenura2 писал(а):Вертикальный Label есть, но все равно не тот.
Ну вообще там много контролов заменителей стандартного Label. Не подошел один, можно и нужно поискать другие. Как вариант можно заюзать PictureBox и псевдометод Print. Можно сделать свой Label.
Бороться и искать, найти и перепрятать

karenura2
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 11.02.2013 (Пн) 6:45

Re: Вертикальное центрирование в Label

Сообщение karenura2 » 13.02.2013 (Ср) 11:24

Спасибо , конечно поищу.
А сделать свой Label ,так я пока чайник.
Но по всей видимости , в ближайшее время этим займусь.

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Вертикальное центрирование в Label

Сообщение ger_kar » 13.02.2013 (Ср) 11:36

karenura2 писал(а):Но по всей видимости , в ближайшее время этим займусь.

Ну вот тебе в помощь здесь и тут.
Бороться и искать, найти и перепрятать

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 13.02.2013 (Ср) 12:10

Чем не годится такой подход?
  • берём обычный label
  • ставим AutoSize = True
  • на его resize вешаем центрирование label'а на форме

karenura2
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 11.02.2013 (Пн) 6:45

Re: Вертикальное центрирование в Label

Сообщение karenura2 » 14.02.2013 (Чт) 7:34

Qwertiy писал(а):Чем не годится такой подход?
  • берём обычный label
  • ставим AutoSize = True

И правда ,вроде все нормально отображается.
Спасибо.
Хотя Label с вертикальным центрированием был бы
логичнее.
Почему разработчики не предусмотрели?Этож на поверхности.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 14.02.2013 (Чт) 8:41

karenura2 писал(а):Почему разработчики не предусмотрели? Этож на поверхности.

Просто для информации: в .NET у контролов, в том числе label'ов, есть вертикальное выравнивание :)

ger_kar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1957
Зарегистрирован: 19.05.2011 (Чт) 19:23
Откуда: Кыргызстан, Иссык-Куль, г. Каракол

Re: Вертикальное центрирование в Label

Сообщение ger_kar » 14.02.2013 (Чт) 8:43

Qwertiy писал(а):Просто для информации: в .NET у контролов, в том числе label'ов, есть вертикальное выравнивание
Ох уж этот Net...
Бороться и искать, найти и перепрятать

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Re: Вертикальное центрирование в Label

Сообщение Mikle » 14.02.2013 (Чт) 11:08

karenura2 писал(а):Почему разработчики не предусмотрели?Этож на поверхности.

Представь - ты расположил на форме несколько лабелов в ряд, всё красиво, на одном уровне. Потом в каком-то лабеле изменился текст - и вся красота съехала.

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 14.02.2013 (Чт) 11:14

Mikle писал(а):Представь - ты расположил на форме несколько лабелов в ряд, всё красиво, на одном уровне. Потом в каком-то лабеле изменился текст - и вся красота съехала.

Не понял. Почему что-то должно куда-то съехать?

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Re: Вертикальное центрирование в Label

Сообщение Mikle » 14.02.2013 (Чт) 13:57

Надо было написать: "в каком-то лабеле изменился ШРИФТ текста"

Qwertiy
Доктор VB наук
Доктор VB наук
 
Сообщения: 2753
Зарегистрирован: 26.06.2011 (Вс) 21:26

Сообщение Qwertiy » 14.02.2013 (Чт) 14:49

Mikle писал(а):Надо было написать: "в каком-то лабеле изменился ШРИФТ текста"

Ну, предположим изменился. И что? А если в Button'е изменится? У шрифта нет привычки самостоятельно меняться.
К тому же, речь же не идёт о принудительном центрировании. Просто сделать 9 вариантов выравнивания и всё будет :)

rikozenit
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 05.11.2021 (Пт) 17:27

Re: Вертикальное центрирование в Label

Сообщение rikozenit » 05.11.2021 (Пт) 17:29

Qwertiy писал(а):Чем не годится такой подход?
  • берём обычный label
  • ставим AutoSize = True
  • на его resize вешаем центрирование label'а на форме

Ребята!! Помогите это реализовать, плиз!! Как поймать событие resize и каким скриптом центровать label? (Мне это на слайде в презентации PowerPoint надо реализовать позарез)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Вертикальное центрирование в Label

Сообщение Хакер » 06.11.2021 (Сб) 3:04

Событие Resize чего?

Речь про классический VB или про программирование в рамках PowerPoint-проекта с помощью VBA?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

rikozenit
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 05.11.2021 (Пт) 17:27

Re: Вертикальное центрирование в Label

Сообщение rikozenit » 06.11.2021 (Сб) 13:51

Хакер писал(а):Событие Resize чего? Речь про классический VB или про программирование в рамках PowerPoint-проекта с помощью VBA?

У меня программирование в рамках PowerPoint-проекта с помощью VBA. На слайде посередине есть большое поле label, в котором по клику поочерёдно появляются различные фразы. Из-за отсутствия центровки по высоте - выглядит это всё очень средне, потому что фраза занимает то одну строчку, то две, то три.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Вертикальное центрирование в Label

Сообщение Хакер » 06.11.2021 (Сб) 14:28

Можно пример картинкой, показывающий то, как должно быть?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

rikozenit
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 05.11.2021 (Пт) 17:27

Re: Вертикальное центрирование в Label

Сообщение rikozenit » 06.11.2021 (Сб) 15:25

Хакер писал(а):Можно пример картинкой, показывающий то, как должно быть?

Прикрепляю во вложения сам PP документ. Посмотрите, пожалуйста!
Вложения
Жребии1.rar
(39.59 Кб) Скачиваний: 97

Teranas
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 224
Зарегистрирован: 13.12.2008 (Сб) 4:26
Откуда: Новосибирск

Re: Вертикальное центрирование в Label

Сообщение Teranas » 08.11.2021 (Пн) 14:31

Чего вы всё огород городите...
Вложения
ResizeLabel.7z
(1.7 Кб) Скачиваний: 110
С уважением, Андрей.

rikozenit
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 05.11.2021 (Пт) 17:27

Re: Вертикальное центрирование в Label

Сообщение rikozenit » 08.11.2021 (Пн) 16:10

Teranas писал(а):Чего вы всё огород городите...

А чем это открывать?
Огород городим потому, что в целом используется презентация и перетаскивать на экраны другое окно для запуска жребия - выглядит не очень. А тут перешёл на слайд со жребием, прокрутил, и продолжил презентацию. Всё лаконично выглядит для смотрящего.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот, Yandex-бот и гости: 36

    TopList