![]() |
|
Модераторы: Poseidon |
![]()
|
|
| newbie2009 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 8.2.2009 Репутация: нет Всего: нет |
Если не сложно то расскажите как делать следующее:
Есть форма. В ней есть контрол PictureBox В нем надо: 1. Добавлять кружочки с надписями ( 1, 2, 3 ...) 2. Удалять кружочки с надписями 3. Возможность перемещать кружочки без мерцания.... Хотя бы первые 2 пункта помогите плиз.... |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
Кружочки придется где-то хранить, заведи список (List) твоих кружков. У кружков придется знать координаты только. Т.е. это будет список List<Point>. Рисовать примерно так:
|
|||
|
||||
| newbie2009 |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 8.2.2009 Репутация: нет Всего: нет |
Почему, например, посл. нажатия 20 раз мышкой, все кружки исчезают? И как быть с удалением и перетягиванием, и с мерцанием? |
||||||
|
|||||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
С мерцанием просто - заведи буфер в памяти (Bitmap), рисуй на нем, а уже после рисования выводи его на канву реального пикчербокса. С удалением - ну заведи кнопку, которая удалять будет определенный кружок. Список кружков сделай в GUI, тут места для фантазии много. Пусть удаляется кружок, который юзер выделит в их списке. Удаление вещь нехитрая - выброси его из списка List и все. А потом перерисовку сразу делай (рисуй все кружки, как сейчас у тебя). Чтобы избежать пропадания при таскании формы и при изменении ее размеров - в соответствующие события поставь перерисовку свою.
Добавлено через 4 минуты и 48 секунд ЗЫ перемещение без мерцания делается аналогично через второй буфер. Добавлено через 4 минуты и 59 секунд ЗЗЫ через тот же самый буфер, конечно же, три штуки заводить незачем. |
|||
|
||||
| newbie2009 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 8.2.2009 Репутация: нет Всего: нет |
Если не сложно, то можно какой-то пример с Bitmap ?
И как насильно вызвать перерисовку? Это сообщение отредактировал(а) newbie2009 - 5.1.2010, 11:08 |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
Да ничего сложного с битмапом. В классе формы заведи приватный битмап. Создай отдельную функцию перерисовки. Получи точно так же его Graphics в этой функции. На этом графиксе рисуй то, что тебе надо. А после окончания этих рисований попросту получи графикс твоего пикчербокса и отрисуй на нем через DrawImage() твой битмап. Все. Из битмапа графикс получать так:
|
|||
|
||||
| newbie2009 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 161 Регистрация: 8.2.2009 Репутация: нет Всего: нет |
Спасибо за помощь!
Только немного ошиблись. Пишу как надо, может кто-то будет испол...
Это сообщение отредактировал(а) newbie2009 - 6.1.2010, 14:34 |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: 16 Всего: 128 |
А, ну да, разумеется. Очепяток.
|
|||
|
||||
![]()
|
| Правила форума "Центр помощи" | |
|
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Центр помощи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |