| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > Изменение размеров картинки в PictureBox |
| Автор: HelgaZaharova 22.4.2008, 18:03 |
| Подскажите, пожалуйста, как изменить размеры картинки, загруженной в PictureBox, и сделать полосы прокрутки. |
| Автор: jonie 22.4.2008, 20:27 |
| есть такая хрень как scrollableControl (обычно оно не вынесено в тулбокс - давите правой Choose items и добавляйте). Далее в него пихаете pictureBox... и какго угодно размера его делаете (например при загрузке). появятся полосы прокрутки.... ну, а уменьшить-увеличить сами найдете... |
| Автор: HelgaZaharova 22.4.2008, 21:23 |
| cпс, я думала вручную писать)) А все-таки есть люди, которые помогут с размерами, мне эо было более принипиально)) |
| Автор: vponomarov 22.4.2008, 21:26 |
| jonie, прикольно, не знал такого кстати, такого же эффекта можно добиться при помощи обычной панели |
| Автор: jonie 22.4.2008, 23:19 |
| vponomarov ну как бы панель отнаследована от ScrollableControl |
| Автор: HelgaZaharova 27.4.2008, 18:46 |
Делаю так: private void button7_Click(object sender, EventArgs e) { int Width, Height, Width1, Height1; Bitmap bm = new Bitmap(100, 200); Width = 100; Height = 200; Width1 = Width/20; Height1 = Height/20; Bitmap bm1 = new Bitmap(Width1, Height1); pictureBox1.Image = bm1; } Рхамеры картинки изменяются, кажется... но эта полученная картинка не отображается.... Есть другие варианты? |
| Автор: vponomarov 27.4.2008, 20:01 | ||||
HelgaZaharova, извени, а что вообще должно отображаться?
вот этим кодом ты создаешь пустую (скорее всего полностью черную) картинку размером 50х100 и отображаешь ее в pictureBox1 смысла в этих строчках вообще не вижу, но это такое дело:
|
| Автор: HelgaZaharova 28.4.2008, 10:00 |
| vponomarov, не поверишь, это не последний способ, кот. я пользовалась... А как правильно, скажи, пожалуйста... |
| Автор: vponomarov 28.4.2008, 20:22 |
| HelgaZaharova, на сколько я понял задачу тебе нужно сделать че-нить типа такого: - в дизайнере на форму положить панель, выставить ей Autoscroll=true, на панель положить пикчерБокс, которому установить SizeMode=Zoom (ну или StretchImage) - установить в pictureBox1.Image нужную картинку (скорее всего загрузить в объект Bitmap с диска, но могут быть варианты - в коде изменять размеры пикчерБокса. полосы прокрутки будут появляться автоматически и картинка будет растягиваться до указанного размера |
| Автор: HelgaZaharova 28.4.2008, 21:01 |
| Только изменение размеров картинки должно происходить при нажатии кнопки. |
| Автор: HelgaZaharova 1.5.2008, 17:23 |
| А ты знаешь, как это сделать? |
| Автор: vponomarov 3.5.2008, 00:21 | ||
а какие проблемы?
что еще осталось неясным? |
| Автор: HelgaZaharova 3.5.2008, 23:03 | ||
Если честно, я делала вот так:
Работает как надо... |
| Автор: shark1 4.5.2008, 00:45 |
| HelgaZaharova класный пример |
| Автор: HelgaZaharova 7.5.2008, 17:54 |
| shark1, не совсе мпоняла, что ты имеешь ввиду, данный код меняет размер картинки, которая находится в PictureBox... Можно попробовать загрузить каринку из файла (OpenFile), можно задать конкретную картинку, тогда проще использовать Bitmap, а не Image. А новое окно.. в смысле дочерняя форма, или в этом же PictureBox? |
| Автор: shark1 9.5.2008, 18:17 |
| в смысле дочерняя форма.Spasibo |