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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как нарисовать пунктирный прямоугольник "муравьи", с закругленными углами? 
V
    Опции темы
opozdaika
Дата 16.11.2009, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Есть изображение, на котором я хотел бы выделить кое-что важное с помощью квадратного прямоугольника. Чтобы он сразу бросался в глаза, хочу сделать его из движущихся "муравьев" (как будто они бегут др. за др.) А чтобы было красиво, хочу сделать закругленные углы. В Инете нашел только примеры с использованием низкоуровневого Win32 API (ну, знаете там всякие CreatePen, GetStockObject и д.п.) ВОПРОС: можно ли сделать такое с использованием только обычных .Net средств? По принципу:
Код
private void ImageControl_Paint(object sender, PaintEventArgs e)
{
       e.Graphics.DrawПрямоугольникСЗакругленнымиУгламиИМуравьями(MyRect, Color.Red);
}

PM MAIL   Вверх
opozdaika
Дата 16.11.2009, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Ну хорошо, смирился я с тем, что придется делать 
Код

hPen = CreatePen(PS_DOT , 1, RGB(254, 0, 0));
hBrush = GetStockObject(NULL_BRUSH);
hOldPen = SelectObject(hdc, hPen);
hOldBrush = SelectObject(hdc, hBrush);
RoundRect(hdc, 5, 3, 60, 60, 10, 10);

Но может быть кто-нибудь подскажет, как анимировать эффект "бегущих муравьев"?
Я могу по таймеру перерисовывать квадратик выделения. НО КАК СДВИНУТЬ ФАЗУ следования белых и черных точек?
Слышал, что есть функции для создания паттернов. Типа, я задаю массив нулей и едениц, которые означают белые и черные участки на линии. Тогда бы я создал три паттерна со здвигом фазы и чередовал бы их по таймеру. Получился бы эффект движения.

Спасибо.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

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


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

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


 




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


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

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