Контрол "Стрелка"

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Контрол "Стрелка"

Сообщение beat_swamp » 29.06.2006 (Чт) 13:38

добрый день всем1 подскажите пожалуйста1 где можно достать контрол СТРЕЛКА" (то есть обычная линия со стрелкой на конце) ???

зы сам пытался написать1 запарился с синусами и косинусами и координатами1 +(

Oxygen
Белая и пушистая
Белая и пушистая
Аватара пользователя
 
Сообщения: 1314
Зарегистрирован: 15.07.2003 (Вт) 7:14
Откуда: Москва

Сообщение Oxygen » 29.06.2006 (Чт) 13:58

Гм. А если не секрет, то для чего этот контрол предназначается? Потому как, я совершенно не поняла, что требуется автору топика.
Процедура клонирования завершена.
Коррекция имплантированного сознания соответствует принятым алгоритмам.
Уникальный идентификатор скопирован в чип временного паспорта.
Активация прав гражданина ожидается в течение 24 часов

beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Сообщение beat_swamp » 29.06.2006 (Чт) 14:01

Oxygen писал(а):Гм. А если не секрет, то для чего этот контрол предназначается? Потому как, я совершенно не поняла, что требуется автору топика.

вобщем есть пикчер бокс на котором надо сначала расставить (некотором образом) стрелки а потом их удалить а потом снова расставить1

или может у кого есть функция вычисляющая координаты перьев стрелки? тогда я стандартными Line нарисую стрелки1

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.06.2006 (Чт) 14:01

Как обычный Line, но со стрелкой на конце.
Я бы рисовал через API: в Аппельмане был пример.
Изображение

beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Сообщение beat_swamp » 29.06.2006 (Чт) 14:06

tyomitch писал(а):Я бы рисовал через API: в Аппельмане был пример.

а что такое "аппельман"?
если можешь кинь ссылку плиз1

VT
Начинающий
Начинающий
Аватара пользователя
 
Сообщения: 22
Зарегистрирован: 22.06.2006 (Чт) 16:31
Откуда: Санкт-Петербург

Сообщение VT » 29.06.2006 (Чт) 14:21

Код: Выделить всё
Sub DrawArrow(ByRef Obj As Object, _
              ByVal x1 As Long, ByVal y1 As Long, _
              ByVal x2 As Long, ByVal y2 As Long, _
              ByVal Color As Long)
Const Arw_Tip_Relative_Length As Double = 0.1
Const Arw_Tip_Height As Double = 0.5 'height of a tip expressed in tip length
Dim dx As Double, dy As Double
dx = x2 - x1
dy = y2 - y1
Obj.Line (x1, y1)-(x2, y2), Color
Obj.Line (x2, y2)- _
     Step(-dx * Arw_Tip_Relative_Length - dy * Arw_Tip_Relative_Length * Arw_Tip_Height, _
          -dy * Arw_Tip_Relative_Length + dx * Arw_Tip_Relative_Length * Arw_Tip_Height), _
         Color
Obj.Line (x2, y2)- _
     Step(-dx * Arw_Tip_Relative_Length + dy * Arw_Tip_Relative_Length * Arw_Tip_Height, _
          -dy * Arw_Tip_Relative_Length - dx * Arw_Tip_Relative_Length * Arw_Tip_Height), _
         Color
End Sub

Просто векторная геометрия, и никаких синусов и углов.
Подойдет?

beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Сообщение beat_swamp » 29.06.2006 (Чт) 15:00

VT, а что такое Step в выражении
Код: Выделить всё
Obj.Line (x2, y2)- _
     Step(-dx * Arw_Tip_Relative_Length - dy * Arw_Tip_Relative_Length * Arw_Tip_Height, _
          -dy * Arw_Tip_Relative_Length + dx * Arw_Tip_Relative_Length * Arw_Tip_Height), _
         Color

и кстати1 когда я отрисовываю методом Line (а не контрол забабахиваю) линии в некоторых местах затираются1 +(
щас попробую перенести то что VT написал применительно к контролам моим1 +)
о результатах сообщу1 +)

beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Сообщение beat_swamp » 29.06.2006 (Чт) 15:08

VT
еще один вопрос1
как я понимаю Arw_Tip_Relative_Length и Arw_Tip_Height - ОТНОСИТЕЛЬНЫЕ параметры1 то есть длина перьев будет равна длине стрелки умноженному на какой то коэффициент?!
как переделать метод line отрисовки пера если входные параметры - координаты стрелки (два икса, два игрика), угол между пером и главной линией стрелки и длина пера ???

beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Сообщение beat_swamp » 29.06.2006 (Чт) 15:55

ооо1 сделал1 +) всем спасибо за внимание1 отдельная благодарность VT1

IIIypuk
Обычный пользователь
Обычный пользователь
 
Сообщения: 96
Зарегистрирован: 10.06.2006 (Сб) 12:39

Сообщение IIIypuk » 29.06.2006 (Чт) 16:29

Извините, немного не в тему.
beat_swamp, шифт почини
:lol: :lol: :lol: :P
Есть 10 типов людей. Те, кто понимает двоичную систему исчисления, и те, кто не понимает...

beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Сообщение beat_swamp » 29.06.2006 (Чт) 16:40

IIIypuk, не в шифте дело1 ;) но в руках1 не из того места растут видимо1 ;)

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 29.06.2006 (Чт) 19:41

beat_swamp, а дело1, руках1, видимо1, видимо2, видимо3

Это всё что? переменные? :lol:
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 29.06.2006 (Чт) 21:23

beat_swamp писал(а):
tyomitch писал(а):Я бы рисовал через API: в Аппельмане был пример.

а что такое "аппельман"?
если можешь кинь ссылку плиз1

Спутал, имел в виду геометрические перья (ExtCreatePen и т.д.)
Но всё равно, подержка стрелок есть в GDI+ :-)
Изображение

beat_swamp
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 107
Зарегистрирован: 05.10.2005 (Ср) 16:16

Сообщение beat_swamp » 30.06.2006 (Пт) 11:09

Хакер писал(а):beat_swamp, а дело1, руках1, видимо1, видимо2, видимо3
Это всё что? переменные? :lol:

+)))))))))


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 54

    TopList