Можно ли запретить изменение image в нест. обстановке Win?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Можно ли запретить изменение image в нест. обстановке Win?

Сообщение kibernetics » 28.05.2007 (Пн) 12:53

У меня на форме есть image.stretch = true, ucButton с текстом...
Так вот, если на машине стоит шрифт, например "Гигантский" или 125%, то интерфейс расползается там где есть caption или stretch = true.
Можно ли как-то запретить изменять винде мои контролы в приложении?

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 28.05.2007 (Пн) 22:13

ИМХО, если перевести все ScaleMode=3, то расползание прекратится. + надо явно задавать шрифты.
Изображение

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 29.05.2007 (Вт) 9:05

Не прекратится.
Лучший способ понять что-то самому — объяснить это другому.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 29.05.2007 (Вт) 10:01

Точно, не прекратится.
И прекращать это не надо, это надо учитывать. Смотреть, чему равно Screen.TwipsPerPixel* и если отличается от 15, то репозиционировать все элементы на форме.
Единственное, что в VB это усугубляет -- часть компонентов VB (система) масштабирует сама, а часть не трогает.
Lasciate ogni speranza, voi ch'entrate.

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 29.05.2007 (Вт) 14:29

alibek писал(а):Точно, не прекратится.
Смотреть, чему равно Screen.TwipsPerPixel* и если отличается от 15, то репозиционировать все элементы на форме.


очень интересное предложение. сегодня попробую.

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 02.06.2007 (Сб) 15:02

я совсем запутался...
на моей машине
TwipsPerPixelX = 15, кнопки отображаются на своих местах...
на машине человека с ограниченными возможностями - стоит большой шрифт и TwipsPerPixelX = 12, у него кнопки разъезжаются...
хотя, и в моём и в его случае ucBtn.Left = 20
объясните, к чему нужно привязывать .Left?

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 02.06.2007 (Сб) 17:23

Я наверное, неправильно выразился...
У меня есть Picture1 на ней контролы в стандартной винде находятся на своих местах, сам Picture1 имеет размеры 515х48, TwipsPerPixelX = 15.

В нестандартной винде Picture1 имеет размеры 412х38,4 при этом, TwipsPerPixelX = 12, поэтому и контролы относительно Picture1 лежат какбы правильно, а на самом деле разнесены друг от друга.

Как их расположить-то правильно относительно изменённого Picture1 ?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 02.06.2007 (Сб) 17:59

kibernetics, правда думаешь, что вопрос оригинален и нов?
Думаешь, никто не отвечает, потому что "неправильно выразился"?
Нет, потому что достало на одно и то же отвечать людям, которым лень найти это в поиске.
http://bbs.vbstreets.ru/viewtopic.php?t=30223
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 02.06.2007 (Сб) 22:39

GSerg
фууух, спасибо большое... спас
пользовался поиском, облазил весь инет, уже вписывал мыслимые и немыслимые варианты поиска - безрезультатно.
даже незнал к какой теме приравнять проблему.
поэтому:
GSerg писал(а):...тут же обнаружится решение, простое и очевидное для всех, кроме вас

как нельзя верно

П.С. и прекрати выбивать почву у новичков... не будь так суров. зачем нужен форум, если есть поиск... если не желаешь отвечать, потому как знаешь что в поиске есть ответ - так хотя бы ответь, что, дескать, смотри поиск, там есть ответ точно. не дай умереть VB IDE :)
Спасибо.


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

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

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

    TopList