Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Как форму сделать неправильного вида? Добавлено: 23.09.03 20:48  

Автор вопроса:  NovichoK
Каким образом можно изменить вид формы для начала хотя бы сделать к примеру кругом, а если кто знает произвольной формы?

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 NovichoK



Вопросов: 72
Ответов: 147
 Профиль | | #1 Добавлено: 23.09.03 21:27
Покопавшись недолго в библитеке кодов я нашел, то про что просил(http://www.vbnet.ru/faq/showtopic.asp?id=239), но все же если у кого есть координаты каких нибудь фигур то прошу отсылать по емейлу потому что подбирать координаты долго и нудно

Ответить

Номер ответа: 2
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #2 Добавлено: 23.09.03 21:34
Тут на сайте статья с примером по этому поводу есть:))) По-моему, в
списке самые популярные материалы.

Ну если тебе просто надо:

dim lngRgn as long
lngrgn=CreateEllipticRegion(0,0,frmmain.wiath/screen.twipperpixelx,frmmain.height/screen.twipperpixely)
lngTemp=setwindowrgn(frmmain.hwnd,lngrgn,true)

Но лучше статью почитай.

Ответить

Номер ответа: 3
Автор ответа:
 USA



Вопросов: 1
Ответов: 184
 Профиль | | #3 Добавлено: 24.09.03 08:11

Напиши себе утилиту, которая будет их растрового файла выбирать координаты и рисуй окошки как душе угодно.

Для создания окон поизвольной формы есть еще путь, который почему-то не упоминается, хотя из своих экперементов я сделал вывод вывод, что получается быстрей. Суть в том, что форму задавать не через объект Region, а создавать объект Path (BeginPath, EndPath) в DC формы, то есть просто рисовать в DC окна любыми функциями рисования. А после используя ConvertPathToRgn получать объект Region, который и будет определять форму. С помощью CombineRgn можно создавать окошки из не касающихся друг друга сегментов, или окошки с "дырками", проще говоря - любой формы.

Ответить

Номер ответа: 4
Автор ответа:
 grayk



Вопросов: 5
Ответов: 100
 Профиль | | #4 Добавлено: 24.09.03 09:34

Предлагаю такой вариант (очень удобно в .Net). Создать класс формы с переопределенным св-вом BackgroundImage. В теле Set  свойства просканировать картинку с учетом цвета, заданного в свойстве вроде TransparentColor, создать на ее основе регион  и назначить его форме. Сразу можно подогнать размеры формы под размеры картинки.
Затем использовать эту форму как шаблон (VB6) или как базовый класс (.Net). Создаем какую попало картинку, используя, например, чистый красный цвет для прозрачных участков, в любом редакторе. Назначаем картинку форме, задаем красный цвет  соотвующему свойству - и форма сама станет нужной формы, на то она и форма ;(sorry за невольный каламбур). Сам пользуюсь уже давненько.

Ответить

Номер ответа: 5
Автор ответа:
 NovichoK



Вопросов: 72
Ответов: 147
 Профиль | | #5 Добавлено: 24.09.03 18:00

to USA:

Как из растрового файла считать координаты точек?

Что такое DS окна?

                                              

Ответить

Номер ответа: 6
Автор ответа:
 USA



Вопросов: 1
Ответов: 184
 Профиль | | #6 Добавлено: 25.09.03 01:16

Чтобы считать координаты из растра (*.bmp), либо другого формата, надо его знать. Найди описание.

DC - Device Context. Контекст устройства. В свойствах формы есть свойство hDC. Это есть хендл этого самого DC, который используется в функциях, использующих DC.

Ответить

Номер ответа: 7
Автор ответа:
 Virtual



Вопросов: 10
Ответов: 30
 Профиль | | #7 Добавлено: 11.10.03 23:23

Есть програмка для этого.

Пиши скину!

asvelin@yandex.ru

 

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам