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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Форма кнопок, Изменение вида кнопок 
:(
    Опции темы
PashaSem
Дата 13.5.2006, 23:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Всем Привет!
Подскажите как сделать обычную кнопку круглой или триугольной.

Спасибо! 
PM MAIL   Вверх
Ch0bits
Дата 14.5.2006, 09:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Python Dev.
****


Профиль
Группа: Завсегдатай
Сообщений: 2124
Регистрация: 21.2.2005
Где: Казань

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



Нарисовать кнопку самому. 
PM WWW   Вверх
mr.DUDA
Дата 14.5.2006, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



Назначить кнопке background-картинку с прозрачностью, вот и всё. Если ещё хочется чтобы и нажималась кнопка только внутри круга/треугольника - нужно наследоваться от Button и перекрывать WndProc. 


--------------------
user posted image
PM MAIL WWW   Вверх
PashaSem
Дата 14.5.2006, 23:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я  обыную фигуру нарисовать смогу.
Но как сделать чтою она имела все те же свойства что и обычная кнопка?
button1 system.Windows.Forms.Button
Там картинку подставить или цвет поменять.

Если кто знает подскажите или ссылку кинте где прочитать можно.  
PM MAIL   Вверх
VisualProgrammerNET
Дата 15.5.2006, 00:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Почётный халявщик
**


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

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



PashaSem, 
Цитата(mr.DUDA @  14.5.2006,  09:56 Найти цитируемый пост)
Если ещё хочется чтобы и нажималась кнопка только внутри круга/треугольника - нужно наследоваться от Button и перекрывать WndProc.


Насколько помню я, вернее, как написано было в книжке от MS Press (хоть убей, не могу вспомнить точно, чё было написано), но кажется надо было просто наследоваться от формы и перегружать методы отрисовки...  smile  


--------------------
3 ГОДА НА user posted image 
PM MAIL ICQ   Вверх
mr.DUDA
Дата 15.5.2006, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



Цитата(VisualProgrammerNET @  14.5.2006,  23:24 Найти цитируемый пост)
Насколько помню я, вернее, как написано было в книжке от MS Press (хоть убей, не могу вспомнить точно, чё было написано), но кажется надо было просто наследоваться от формы и перегружать методы отрисовки...  

Можно и так. Но тогда такую кнопку можно использовать только на той форме, где объявлен обработчик Paint.


PashaSem, вот тут неплохая кнопка:
http://www.codeproject.com/cs/miscctrl/XCtrls.asp  


--------------------
user posted image
PM MAIL WWW   Вверх
PashaSem
Дата 15.5.2006, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



microsoft предлагает такое решение с помощью регионов 
http://msdn2.microsoft.com/en-us/library/s...ol.region.aspx#

The following code example demonstrates how to use the Region property by creating a round button. To run the example, paste the following code in a form containing a button called roundButton. This example requires that the Paint event is connected to the event handler defined in the example.

Я только учусь и вопрос может показаться глупым

Если я хочу чтобы на форме Form1 при загрузке была круглая кнопка вствляю код по ссылке.

Вопрос поскольу   event handler у меня Form1  как мне присоеденить к ней Paint event ?

Спасибо 
PM MAIL   Вверх
mr.DUDA
Дата 15.5.2006, 18:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



В свойствах формы на закладке Events выбрать из комбобокса около Paint метод, на который нужно повесить событие. 


--------------------
user posted image
PM MAIL WWW   Вверх
lioness
Дата 20.11.2006, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Я посмотрела примеры, но что-то они сложные очень.
А у Charles-а  Petzold-а что-то совсем просто: нарисовал эллипсоидную кнопку и больше ничего не объяснял. Где бы мне еще посмотреть... Нужно всего-то их мне штук шесть на одной форме одинаковых, одна за другой, но красивых, трехмерных, нажимающихся ... Только состояние у них будет меняться: нейтральное, нажатое, отжатое, отработанное.  smile 
PM MAIL   Вверх
mr.DUDA
Дата 21.11.2006, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


3D-маньяк
****


Профиль
Группа: Экс. модератор
Сообщений: 8244
Регистрация: 27.7.2003
Где: город-герой Минск

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



lioness, на кодпрожекте их полным-полно, искать по слову aqua button


--------------------
user posted image
PM MAIL WWW   Вверх
lioness
Дата 23.11.2006, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Действительно,  аква батончики есть просто симпомпончики  smile 

Интересно, на исходном примере все шесть разноцветных сразу видны на форме, как только их приплюсовываешь к Controls.
А когда я сделала одну на своей форме, то она работает, меняет цвет и подмаргивает, всё как надо, но после this.Controls.Add(aquabutton1)   я у себя в дизайнере их не вижу.  Вручную редактирую properties и events и можно, конечно, наплевать и так оставить.
Но интересно, отчего бы так?  
На исходном примере все строки комментариями отключила. Кроме new для первой аква кнопки. И после add  она тут же появляется на форме в дизайнере.  А у меня вроде бы тоже так же, но НЕ появляется.  smile 

Интересно, что когда экспериментировала на простом примере - то кнопки в дизайнере не появлялись. А когда стала заменять  свою обычную кнопку на новую AquaButton, то распрекрасно вижу новую красивую кнопку и её properties в дизайнере, могу кнопку таскать по полю, изменять размер и т.д. и т.п. Если уберу "this.Controls.Add(...)", то кнопка, естественно, исчезает. 
Почему эта строка не срабатывала на простом примере - так и осталось невыясненным.  smile 

Это сообщение отредактировал(а) lioness - 27.11.2006, 11:41
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

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


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

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


 




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


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

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