Пропорциональность картинки в пикчербоксе.

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Гость
 

Пропорциональность картинки в пикчербоксе.

Сообщение Гость » 11.06.2004 (Пт) 19:05

Дело такое:
Есть пикчербокс, в него загружаются разные картинки с жесткого диска. Дело в том, что корректно отображаются только те картинки, которые пропорционально одинаковые с размерами пикчербокса. Т.е. другие картинки растягиваясь в пикчербоксе выглядят коряво.
Надеюсь понятно, о чем я говорю. Если вы сталкивались с такой же проблемой, то как вы ее решали?

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 11.06.2004 (Пт) 20:00

другие картинки растягиваясь в пикчербоксе выглядят коряво
Растягиваясь? В PictureBox'е-то? Ты что, StretchBlt там используешь? Вообще, у PictureBox есть свойство AutoSize, а у Image - Stretch.
Нет меня больше

Гость
 

Сообщение Гость » 11.06.2004 (Пт) 20:27

Ладно придераться а? Спутал пикчербокс и имейджем. Может кто поможет?

ALX_2002
Мега гуру
Мега гуру
 
Сообщения: 2056
Зарегистрирован: 25.11.2002 (Пн) 20:03

Сообщение ALX_2002 » 12.06.2004 (Сб) 0:18

А ты пробывал взять размеры высоты и ширины рисунка, а потом найти коэффициент отношения - высоту/ширину, а потом..... по идее высоту * K ?

Короче через коэффициент увеличивать пропорционально размеры.

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 12.06.2004 (Сб) 17:57

58i, я не придираюсь, а пытаюсь помочь! :roll: У Image есть свойство Stretch, если его поставить в False, то картинка перестаёт растягиваться!
Если тебе нужно пропорциональное растягивание, то положи на форму Image и вставь код:
Код: Выделить всё
Dim Picture As StdPicture, H&, W&, R
Set Picture = LoadPicture("C:\0.bmp")
Do
R = InputBox("Введите, во сколько раз увеличить картинку")
Loop Until IsNumeric(R)
H = Round(Picture.Height * R)
W = Round(Picture.Width * R)
Image1.Stretch = True
Image1.Height = H
Image1.Width = W
Set Image1.Picture = Picture
Нет меня больше


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

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

Сейчас этот форум просматривают: AhrefsBot и гости: 4

    TopList