Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Вниз

Создание "спутникообразного" меню... Вопросы.   Найти похожие ветки 

 
cosinus ©   (2006-07-19 14:16) [0]

Есть необходимоть написать popup-меню в виде круглых кнопок, рассположенных по окружности, с центром позиции курсора (если кто видел игру Sims, вот точно как там).
Вопросов собственно 2.
1) Существует ли в природе компонент, делающий такое меню?
2) Откуда мне к этому подойти, если компонента нет и следовательно необходимо писать самому? Есть идея динамически создавать какую-либо панельку (ну типа TPanel, только ее по моему програчной сделать нельзя... а может я и ошибаюсь), transparent в 100% и опять же динамически накидать на нее по кругу кнопки (я думаю в начале объявить какие-нибудь TStringList с составом нескольких меню и по необходимости вытягивать те или иные списки и уже по ним строить менюшку).
Есть ли другой подход?
Заранее благодарен.
Заранее благодарю.


 
tesseract ©   (2006-07-19 14:19) [1]


> cosinus ©   (19.07.06 14:16) 

SetWindowRgn - копать в эту сторону.

От себя добавлю, что в студеческие годы делал что-то похожее.
только там гемморой с реакцией на попадание в окно какой-то был, но всё решаемо.


 
cosinus ©   (2006-07-19 14:22) [2]


> tesseract ©   (19.07.06 14:19) [1]
SetWindowRgn


А зачем он мне??? Честно не пойму. Мне же не форму надо сделать круглой, а расположение кнопок по кругу на , видимо, прозрачной подкладке...


 
tesseract ©   (2006-07-19 14:23) [3]


> А зачем он мне??? Честно не пойму. Мне же не форму надо
> сделать круглой, а расположение кнопок по кругу на , видимо,
>  прозрачной подкладке...


Кнопка - тоже окно, оно имеет handle. И не с формами придёться дело иметь.


 
cosinus ©   (2006-07-19 14:24) [4]

Кстати, если делать, как я написал, то никакого геморроя нет. Вместо кнопки используем круглую картинку и... onClick вроде еще существует ;)))


 
cosinus ©   (2006-07-19 14:26) [5]


> tesseract ©   (19.07.06 14:23) [3]

Да неее... Круглой кнопку как таковую то я делать и не собираюсь (см. выше). Делать мне больше нечего, ей богу :) Мне немного другое нужно.


 
tesseract ©   (2006-07-19 14:29) [6]

До Win2000 нет прозрачности.
Я думал ты хочешь сделать как у Genius/logitech - круг в который вписано 8 кнопок.


 
cosinus ©   (2006-07-19 14:37) [7]


> tesseract ©   (19.07.06 14:29) [6]

Я честно говоря не знаю, как у Logitech... Самый похожий пример из известных мне, я привел - это Sims. Кнопки видны, окно на котором они рассположены нет. Вот. :)
До 2000 мне и не надо.


 
antonn ©   (2006-07-19 15:36) [8]

если нужно графически, то вот примерчик:
http://an-files.narod.ru/_files/menu_r.rar (3,56Кб)


 
antonn ©   (2006-07-19 15:55) [9]

примерчик из [8], модернизированный до меню "неграфического":)
http://an-files.narod.ru/_files/menu_r_2.rar (5Кб)


 
cosinus ©   (2006-07-19 16:09) [10]


> antonn ©   (19.07.06 15:55) [9]

Сссупер. Именно то, что надо, спасибо.
Я так же начал делать и тоже на второй форме :)
За уже реализованный пример премного благодарен.


 
antonn ©   (2006-07-19 17:11) [11]

ну и еще один пример, продолжение второго, на основе изображений с альфаканалом:
http://an-files.narod.ru/_files/menu_r_3.rar (7Кб)

ЗЫ там код довольно глупый местами, но рабочий:)


 
Andy BitOff ©   (2006-07-19 17:49) [12]

antonn ©

А ты развей тему, хороший компонент получится. Я бы с удовольствием его вставил в проект, тем более есть в какой и не в один. И для скиновых, тоже удобно.


 
homm ©   (2006-07-19 17:51) [13]

> Самый похожий пример из известных мне, я привел - это Sims

А тем кто в симов не играл, как вас понимать?


 
Владик   (2006-07-19 17:51) [14]


> antonn ©   (19.07.06 17:11) [11]
> ну и еще один пример, продолжение второго, на основе изображений
> с альфаканалом:


Респект :) почистить и вставить комментарии - так вообще готовый пример !


 
Экспериментатор   (2006-07-20 10:05) [15]

Класно получилось


 
Экспериментатор   (2006-07-20 10:05) [16]

Пардон, классно



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.08.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.033 c
15-1153039011
Cerberus
2006-07-16 12:36
2006.08.13
Альтернетива.


15-1153352226
MeF Dei Corvi
2006-07-20 03:37
2006.08.13
Читерство в коде


2-1153806680
VitV
2006-07-25 09:51
2006.08.13
Отбражение текста DBLookupListBox


15-1152709539
oldman
2006-07-12 17:05
2006.08.13
Ультиматум истек - Microsoft оштрафован


2-1153863154
ISO
2006-07-26 01:32
2006.08.13
Canvas





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский