Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Рисование в PictureBox при запуске приложения 
:(
    Опции темы
bobor
Дата 9.4.2011, 01:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 31.8.2005

Репутация: нет
Всего: нет



Всем привет. Проблема вот в чем, не могу выбрать нужное событие, для того чтобы при запуске приложения на pictureBox (в Graphics) был нарисован залитый прямоугольник. пробовал события Shown, Load, но чтото не оч помогает, если использовать Shown то фигура рисуется но потом почему-то pictureBox перерисовывается и возвращается к исходному значению. Может подскажете варианты решения проблемы ?
PM MAIL   Вверх
Экскалупатор
Дата 9.4.2011, 01:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1746
Регистрация: 1.4.2009
Где: г. Минск

Репутация: 5
Всего: 24



Paint?
PM MAIL ICQ   Вверх
bobor
Дата 9.4.2011, 07:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 31.8.2005

Репутация: нет
Всего: нет



Странно как-то, у меня на форме кроме пикчбокса лежит еще кнопка(для неё нет событий вообще) при таком коде 
Код

        private Graphics mygr;

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            mygr = pictureBox1.CreateGraphics();
            mygr.FillRectangle(new SolidBrush(Color.Red), 0, 0, 700, 500);
        }

на пикчбокс рисуется прямоугольник только при наведении на эту кнопку.

Еще попробовал событие пикчбокс LoadCompleted, ну и Paint заодно, тоже безуспешно


Это сообщение отредактировал(а) bobor - 9.4.2011, 07:39
PM MAIL   Вверх
diadiavova
Дата 9.4.2011, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 18
Всего: 142



bobor, во-первых, это должно быть событие Paint не формы, а того контрола, в котором рисуешь. Во-вторых, объект Graphics надо получать из второго аргумента обработчика события e.Graphics. Ну и в-третьих, не обязательно использовать пикчербокс и даже как правило это не лучший вариант.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
bobor
Дата 9.4.2011, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 31.8.2005

Репутация: нет
Всего: нет



Ладно, спасибо, пару правил усвоил, пойду порисую в другом месте
PM MAIL   Вверх
Abbath1349
Дата 10.4.2011, 18:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 214
Регистрация: 16.6.2010

Репутация: нет
Всего: нет



Цитата(diadiavova @  9.4.2011,  09:05 Найти цитируемый пост)
Ну и в-третьих, не обязательно использовать пикчербокс и даже как правило это не лучший вариант. 

А какой будет лучший вариант если не секрет?)

PM MAIL   Вверх
diadiavova
Дата 10.4.2011, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 18
Всего: 142



Цитата(Abbath1349 @  10.4.2011,  19:12 Найти цитируемый пост)
А какой будет лучший вариант если не секрет?)

От задачи зависит, но, как правило пикчербокс выбирают из-за того, что он (вроде бы) предназначен для отображения изображений. Только обычно речь идет об отображении объекта Image, а не собственноручном рисовании. Если нужен контрол для рисования, его просто надо создать свой.


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0732 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.