none
Просмотр большой карты в panel RRS feed

  • Вопрос

  • Задача - просмотр большой карты в окне. В связи с этим может кто сталкивался со следующим. 1. Как сделать чтобы вместе с движением мышки - передвигалась картинка в panel при нажатой левой кнопке (стандартное свойство просмотрщиков картинок). 2. Как сделать zoom , т.е. при нажатии кнопки, скажем "+" картинка изменяла масштаб, сохраняя фокус просмотра. Сейчас я делаю так - [CSHARP] private void button1_Click(object sender, EventArgs e) { pictureBox1.Width += 20; pictureBox1.Height += 20; } [/CSHARP] Можно , конечно дополнительно просто перемещать верхний левый угол на половину величины шага увеличения [CSHARP] private void button1_Click(object sender, EventArgs e) { pictureBox1.Width += 20; pictureBox1.Height += 20; pictureBox1.Left -= 10; pictureBox1.Top -= 10; } [/CSHARP] Но может есть лучше варианты? Спасибо!
    • Перемещено Tagore Bandlamudi 1 октября 2010 г. 22:36 MSDN Forums consolidation (От:Visual C#)
    23 марта 2010 г. 8:13

Ответы

  • Двигать изображение внутри PictureBox вы не можете. Нужно поместить PictureBox в другой контейнер, например Panel, и менять свойства Location для PictureBox относительно внешнего контейнера. Подробней

    Move an image within a picture box in C#

    По поводу зумминга здесь интересный проект

    PictureBox Zoom

    • Помечено в качестве ответа I.Vorontsov 23 марта 2010 г. 9:14
    23 марта 2010 г. 8:34