Смещение изображения в приложении Visual Studio - PullRequest
0 голосов
/ 15 сентября 2008

У меня есть приложение Visual Studio с изображением заставки, нарезанным на «кусочки». Позиции указываются в конструкторе форм, поэтому они правильно выстраиваются на экране. Тем не менее, изображения неуместны при запуске приложения на китайской версии Windows XP. Похоже, что фрагменты изображения были «взорваны» друг от друга.

Что здесь происходит? Имеют ли международные версии Windows различное значение «верхней левой» координаты изображения? Как я могу заставить изображения точно отображаться там, где я хочу?

Ответы [ 2 ]

2 голосов
/ 16 сентября 2008

Мы нашли решение! По всей видимости, на китайском ПК с XP растягивались коробки с картинками, но содержащиеся в них изображения - нет. Исправлено было добавить код, подобный следующему:

Me.PictureBoxIcon.Width = Me.PictureBoxIcon.Image.Width
Me.PictureBoxIcon.Height = Me.PictureBoxIcon.Image.Height

Dim loc As New Point
loc.X = Me.PictureBoxIcon.Location.X
loc.Y = Me.PictureBoxIcon.Location.Y + Me.PictureBoxIcon.Height
Me.PictureBoxAbout.Location = loc
Me.PictureBoxAbout.Width = Me.PictureBoxAbout.Image.Width
Me.PictureBoxAbout.Height = Me.PictureBoxAbout.Image.Height

Надеюсь, это поможет кому-то еще!

0 голосов
/ 16 сентября 2008

В событии OnLoad формы вы всегда можете явно указать местоположение каждого раздела. Если начать с верхнего левого угла с первого и принять массив с изображениями в следующем порядке:

images[0].Location = new Point(0,0);
for (int i = 1; i < images.Length; i++)
{
  images[i].Location = new Point(images[i - 1].Location.X + images[i - 1].Width, 0);
}

Это позволит установить первое изображение в верхнем левом углу, а все последующие изображения сразу после последнего изображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...