Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 1
Регистрация: 30.08.2016
Сообщений: 58
1

Графический редактор. Передача размера изображения

28.05.2017, 02:51. Просмотров 982. Ответов 8
Метки нет (Все метки)

Доброго времени суток, господа. Пишу графический редактор с наложением разных эффектов(как в фотошопе, аля: сепия, резкость и т.д. и т.п.). Но столкнулся с проблемой, которую не могу решить. Суть в чём:
Вот я запускаю программу

Графический редактор. Передача размера изображения


Далее выбираю пункт меню "Создать"

Графический редактор. Передача размера изображения


И дальше открывается вот такое окошко

Графический редактор. Передача размера изображения


Моя проблема заключается в том, что я не знаю как обратиться к главной форме, чтобы по кнопке применить создавалось изображение с тем размером, которое я задаю в поля. Изображение должно создаваться в pictureBox-е на главной форме. Как быть, что нужно сделать. Подскажите, пожалуйста
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.05.2017, 02:51
Ответы с готовыми решениями:

Простейший графический редактор, трансформирования изображения
Ребята, преподаватель по программированию сказал, что поставит пять за курсовую в том случае, если...

[Графический редактор] Как осуществить поворот изображения в PictureBox?
Есть pictureBox. Нужно осуществить поворот изображения. Подскажите как реализовать?

Графический редактор, добавить функцию изменения размера выделенной части нарисованного элемента
Создаю графический редактор..хочу добавить функцию изменения размера выделенной части нарисованного...

Графический редактор - Как сделать чтобы при изменении размера окна форма не очищалась
Я делаю графический редактор и возник вопрос -как сделать чтобы при изменении размера окна форма...

8
3908 / 2827 / 1228
Регистрация: 09.05.2015
Сообщений: 6,926
28.05.2017, 03:04 2
Лучший ответ Сообщение было отмечено LoKi_MoKi как решение

Решение

Ну например можно создать у формы "Создать" public свойство типа Size, и в него по нажатию кнопки применить записать введенный размер, закрыть окно, присвоить DialogResult. А в главной форме проверить DialogResult, считать размер...
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class FormCreate
{
    public Size PicSize { get; private set; }
 
    void applyButton_Click(...)
    {
        PicSize = new Size(...);
        DialogResult = DialogResult.OK;
        Close();
    }
 
    void cancelButton_Click(...)
    {
        DialogResult = DialogResult.Cancel;
        Close();
    }
}
 
class MainForm
{
     void createMenu_Click(...)
     {
         FormCreate cform = new FormCreate();
         DialogResult res = cform.ShowDialog();
         if (res != DialogResult.OK)
            return;
         Size picSize = cform.PicSize;
         // ...
     }
}
1
0 / 0 / 1
Регистрация: 30.08.2016
Сообщений: 58
28.05.2017, 03:11  [ТС] 3
А каким образом будет обращение к picturebox происходить? (понимаю что совсем лохопедский вопрос, но чтобы потом уже не спрашивать)
0
3908 / 2827 / 1228
Регистрация: 09.05.2015
Сообщений: 6,926
28.05.2017, 03:15 4
Цитата Сообщение от LoKi_MoKi Посмотреть сообщение
А каким образом будет обращение к picturebox происходить?
Смотря где он у вас, если на основной форме, то напрямую
C#
1
pictureBox1.XXX = YYY;
1
0 / 0 / 1
Регистрация: 30.08.2016
Сообщений: 58
28.05.2017, 03:17  [ТС] 5
Цитата Сообщение от Someone007 Посмотреть сообщение
Смотря где он у вас, если на основной форме, то напрямую
Ну, если по факту. То все кнопки и всё меню находится на основной форме вместе с пикчебоксом, и мне нужно обращаться с второстепенных окон на главное окно к пикчебоксу
0
3908 / 2827 / 1228
Регистрация: 09.05.2015
Сообщений: 6,926
28.05.2017, 03:47 6
Цитата Сообщение от LoKi_MoKi Посмотреть сообщение
мне нужно обращаться с второстепенных окон на главное окно к пикчебоксу
Не нужно. Смотрите код выше внимательно. Если все сделать как там показано то обращаться к основной форме из второстепенных не требуется. Там первая часть код второстепенной формы, вторая часть - код основной формы... В 28 строке на месте комментария вы можете обращаться к вашему пикчербоксу напрямую, т.к. этот код в основной формы...
1
0 / 0 / 1
Регистрация: 30.08.2016
Сообщений: 58
28.05.2017, 04:09  [ТС] 7
Т.е. Я пишу:
C#
1
2
3
4
        public Size ImageSize
        {
            get { return new Size((int)widthUpDown.Value, (int)heigthUpDown.Value); }
        }
а дальше что писать
C#
1
ImageSize = new Size(????);
и вот ещё вопрос, новую картинку(которую создаю) как добавить на пикчебокс?
0
3908 / 2827 / 1228
Регистрация: 09.05.2015
Сообщений: 6,926
28.05.2017, 04:22 8
C#
1
2
3
// продолжние кода из предыдущего поста
Bitmap img = new Bitmap(picSize.Width, picSize.Height);
pictureBox1.Image = img;
1
0 / 0 / 1
Регистрация: 30.08.2016
Сообщений: 58
28.05.2017, 06:12  [ТС] 9
А можете весь целиком, а то тупняк подъехал, очень долго обдумываю...
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class FormCreate
{
    public Size PicSize { get; private set; } //что тут писать
 
    void applyButton_Click(...)
    {
        PicSize = new Size(...); //что тут
        DialogResult = DialogResult.OK;
        Close();
    }
 
    void cancelButton_Click(...)
    {
        DialogResult = DialogResult.Cancel;
        Close();
    }
}
 
class MainForm
{
     void createMenu_Click(...)
     {
         FormCreate cform = new FormCreate();
         DialogResult res = cform.ShowDialog();
         if (res != DialogResult.OK)
            return;
         Size picSize = cform.PicSize;
         // и вот это тут, я так понимаю
           Bitmap img = new Bitmap(picSize.Width, picSize.Height);
            pictureBox1.Image = img;
     }
}
Добавлено через 49 минут
Someone007, Спасибо за помощь, но у меня не рисует пустую картинку

Добавлено через 56 минут
Someone007, А не, Разобрался. Ещё раз спасибо за помощь)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2017, 06:12

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Калькулятор, редактор списка строк, графический редактор
Калькулятор:

Калькулятор, редактор списка строк, графический редактор
Помогите, кто чем может! Очень надо,хотя бы что то из этого сделать!

Графический редактор
Пишу свой графический редактор. Заинтересовал инструмент "Выделение", но никак не могу его...

Графический редактор
Всем привет! Надо написать графический редактор на C# ( курсовая работа ) Минимальный набор...

Графический редактор
Мне задали Лабу.Графический редактор.Вот содержание лабы. В конце дано задание из 6...

Графический редактор
Скиньте пожалуйста исходники, у меня есть один, но он очень сложный для меня, во многом не могу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.