Форма CommandButton?

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

Форма CommandButton?

Сообщение кок » 08.02.2005 (Вт) 12:48

Здравсвуйте всем жителям!
Вопрос такой: как изменить CommandButton?
Например без углов, или в форме овала.
:?: :oops:

Igor_123
Осторожный Баянист
Осторожный Баянист
Аватара пользователя
 
Сообщения: 1325
Зарегистрирован: 21.07.2004 (Ср) 13:00
Откуда: Днепропетровск

Сообщение Igor_123 » 08.02.2005 (Вт) 12:55

Мне кажется проще всего будет заготовить соответствующие изображения и положить их в PictureBox Or Image and use events MouseDovn, MouseUp. В них изменять рисунок.
Можно сделать контрол, использовать контрол стороннего разработчика.
Удачи! :wink:

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 08.02.2005 (Вт) 14:29

Нет, так не интересно.

Примеры контролов ищите тут:
www.vbaccelerator.com
www.pscode.com

Нужно рисовать используя API. В примерах на сайтах выше все это есть.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

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

Сообщение tyomitch » 08.02.2005 (Вт) 23:11

...а можно просто задать кнопке нужный регион.
Изображение

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 08.02.2005 (Вт) 23:25

Это самый простой способ (про регион). Вот пример
Код: Выделить всё
Private Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long

Private Sub Form_Load()
Dim hRgn&
Me.ScaleMode = 3
hRgn = CreateEllipticRgn(Command1.Left, Command1.Top, Command1.Left + Command1.Width, Command1.Top + Command1.Height)
SetWindowRgn Command1.hWnd, hRgn, True
DeleteObject hRgn
End Sub

Ship
Новичок
Новичок
 
Сообщения: 35
Зарегистрирован: 15.01.2005 (Сб) 0:53

Сообщение Ship » 14.02.2005 (Пн) 22:03

A.A.Z. писал(а):Это самый простой способ (про регион). Вот пример
Код: Выделить всё
Private Declare Function CreateEllipticRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long

Private Sub Form_Load()
Dim hRgn&
Me.ScaleMode = 3
hRgn = CreateEllipticRgn(Command1.Left, Command1.Top, Command1.Left + Command1.Width, Command1.Top + Command1.Height)
SetWindowRgn Command1.hWnd, hRgn, True
DeleteObject hRgn
End Sub


У меня кнопка просто исчезла .... :(

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 14.02.2005 (Пн) 22:12

Не может быть :roll: Например, в приаттаченном проекте (там кнопка специально выделена красным) у меня все работает. А у тебя :?:
Вложения
Project1.zip
Project1
(2.35 Кб) Скачиваний: 36

neic
Жираф
Жираф
 
Сообщения: 492
Зарегистрирован: 13.02.2005 (Вс) 23:44
Откуда: Сланцы

Сообщение neic » 14.02.2005 (Пн) 23:11

Чё вы паритесь можно же просто создать UserControl
Вложения
Program Files.rar
UserControl - приложение ввиде кнопки.
(2.38 Кб) Скачиваний: 37

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 15.02.2005 (Вт) 18:41

Лучше уж тогда универсальный контрол сделать :roll:

neic
Жираф
Жираф
 
Сообщения: 492
Зарегистрирован: 13.02.2005 (Вс) 23:44
Откуда: Сланцы

Сообщение neic » 16.02.2005 (Ср) 19:27

Можно, я просто привёл пример!


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

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

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

    TopList