Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2012, 20:03   #1
polarity
Пользователь
 
Регистрация: 30.05.2010
Сообщений: 30
Восклицание Работа с изображениями на мультитаче

Здравствуйте.

Задача такая : написать приложение для мультитача для работы с изображениями.
Для начала хочу сделать базовые операции (перемещение, поворот, масштабирование).

По примеру этого видео:
http://www.youtube.com/watch?v=3bmhE...layer_embedded

Я понимаю, что полно описаний этих операций. Но хотелось бы услышать с чего лучше начинать и т.п.
Особенно, про загрузку изображения. Возможно такое написать только на шарпе, без впф? Просто это моя вторая программа на нем, толком ничего не знаю)

Что предложите?
polarity вне форума Ответить с цитированием
Старый 13.01.2012, 20:00   #2
polarity
Пользователь
 
Регистрация: 30.05.2010
Сообщений: 30
По умолчанию

Пробую вот загрузку, вроде все нормально:
Код:
    PictureBox pict = new PictureBox();
            pict.Image = Image.FromFile(listBox1.SelectedItem.ToString());
            pict.SizeMode = PictureBoxSizeMode.StretchImage;
            pict.Height = pict.Image.Height/2;
            pict.Width  = pict.Image.Width/2;
            pict.Location = new Point(280,120);
            pict.Parent = this;
А как сейчас написать событие к созданному picturebox? Пробую так, но не получается:
Код:
	  private void pict_Click(object sender, EventArgs e)
        {
           MessageBox.Show("asdf");
        }
Где-то откопал, что надо добавить:
Код:
       pict.Click += new System.EventHandler(this.pict_Click);
            pict.MouseDown += new System.EventHandler(this.pict_MouseDown);
            pict.MouseMove += new System.EventHandler(this.pict_MouseMove);
            Controls.Add(pict);

Клик работает:
Код:
	private void pict_Click(object sender, EventArgs e)
        {
            MessageBox.Show("asdf");
        }
А вот перемещение нет:
Код:
        private void pict_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                pict.Left += (e.X - x);
                pict.Top += (e.Y - y);
            }
        }
Пишет, что "Элемент "pict" не существует в текущем контексте." Как быть?)
polarity вне форума Ответить с цитированием
Старый 15.01.2012, 09:50   #3
polarity
Пользователь
 
Регистрация: 30.05.2010
Сообщений: 30
По умолчанию

Народ, ну как передать в функцию pict на который я нажал?
polarity вне форума Ответить с цитированием
Старый 15.01.2012, 14:33   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Пишет, что "Элемент "pict" не существует в текущем контексте." Как быть?)
например подумать чем же может быть sender.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с изображениями cheef PHP 6 17.03.2011 16:44
Работа с изображениями C# _PROGRAMM_ Общие вопросы .NET 4 16.02.2010 16:38
работа с изображениями викталик Помощь студентам 0 03.05.2009 23:58