Изменить расположение меню

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

Изменить расположение меню

Сообщение Alexandrius » 17.11.2009 (Вт) 12:33

Если рисовать заголовок окна самому, заливать его в качестве фона для формы с BorderStyle 0, то как можно настроить расположение меню, например опустить его ниже на 30 пикселей?
Visual Basic 2008

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

Re: Изменить расположение меню

Сообщение Хакер » 17.11.2009 (Вт) 12:45

Заголовок окна должен быть в NC-Area. Я ведь прав, что ты один из тех, кто либо не слышал об этом, либо плевал на это?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Alexandrius
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 55
Зарегистрирован: 01.11.2009 (Вс) 14:09
Откуда: Украина

Re: Изменить расположение меню

Сообщение Alexandrius » 17.11.2009 (Вт) 12:47

Поясни, пожалуйста, Хакер. Буду благодарен.
Visual Basic 2008

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

Re: Изменить расположение меню

Сообщение Хакер » 17.11.2009 (Вт) 12:49

Что пояснить?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Alexandrius
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 55
Зарегистрирован: 01.11.2009 (Вс) 14:09
Откуда: Украина

Re: Изменить расположение меню

Сообщение Alexandrius » 17.11.2009 (Вт) 12:52

Заголовок окна должен быть в NC-Area...
Visual Basic 2008

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

Re: Изменить расположение меню

Сообщение Хакер » 17.11.2009 (Вт) 12:58

Ты и о неклиентской области наверное впервые слышишь?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Изменить расположение меню

Сообщение Денис » 17.11.2009 (Вт) 13:28

Хакер, зачем издеваешься над новичками?
Могу в пример привести старый винамп, там тоже окно без заголовка с отрисованным на клиентской области скином.
И что, по твоему, создатели винампа ламеры? Как бы не так.
Теперь касательно сабжа.
Если нужно свое меню, то его нужно рисовать самому. Как минимум, заголовок.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Изменить расположение меню

Сообщение alibek » 17.11.2009 (Вт) 13:39

Денис писал(а):Могу в пример привести старый винамп, там тоже окно без заголовка с отрисованным на клиентской области скином.

Там окно с заголовком.
Lasciate ogni speranza, voi ch'entrate.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Изменить расположение меню

Сообщение Денис » 17.11.2009 (Вт) 13:57

alibek писал(а):
Денис писал(а):Могу в пример привести старый винамп, там тоже окно без заголовка с отрисованным на клиентской области скином.

Там окно с заголовком.

Могу поспорить, в те далекие годы, когда я пользовался винампом, когда винда (98-я еще) зависала, то у всех окон винампа появлялись системные заголовки. Я конечно могу неправильно понимать, но я понимаю так, что в нормальном состоянии заголовков у окон винампа нет, и вся видимая поверхность - это клиентская область.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

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

Re: Изменить расположение меню

Сообщение Хакер » 17.11.2009 (Вт) 14:00

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

У тебя месяц генерации ерунды?

Нет абсолютно никакого, вообще никакого смысла приводить пример того, как какие-то парни поступили не по правилам, когда есть жесткие правила. Если кто-то выдающийся (разработчики винампа) сделал что-то плохо, это не значит, что всем остальным теперь тоже можно так делать.

В MSDN говорится, что заголовок, рамка и меню относятся к объектам неклиентской области. И там написано, что если у приложения кастомная неклиентская область, то оно должно обрабатывать соответствующие NC-сообщения. Там написано слово "must". Если ты хорошо знаешь английский, ты знаешь, какой эмоциональной окраской обладает это слово.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Twister
Теоретик
Теоретик
Аватара пользователя
 
Сообщения: 2251
Зарегистрирован: 28.06.2005 (Вт) 12:32
Откуда: Алматы

Re: Изменить расположение меню

Сообщение Twister » 17.11.2009 (Вт) 14:01

Ну в линейке 2-х версий (и кажись даже в современных 5-ых с классическим стилем) окно плейлиста точно имеет заголовок. Сами проверьте - загрузите в список около 5000 файлов с опцией "Читать заголовки при загрузке в Winamp" :)
А я все практикую лечение травами...

Alexandrius
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 55
Зарегистрирован: 01.11.2009 (Вс) 14:09
Откуда: Украина

Re: Изменить расположение меню

Сообщение Alexandrius » 19.11.2009 (Чт) 10:00

Спасибо за ответы. Мысль Дениса, на счёт того, чтобы рисовать меню мне понятна. А, если не рисовать, как Хакер рекомендует, то как изменить вид неклиентской области? Цвет фона, вид кнопок(свернуть, развернуть, закрыть) и т. д. Может какие API функции есть для этого?
Visual Basic 2008

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

Re: Изменить расположение меню

Сообщение Хакер » 19.11.2009 (Чт) 10:03

Не надо делать, как Хакер рекомендует. Надо делать, как мануал рекомендует.

А как он рекомендует в нём и написано.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Изменить расположение меню

Сообщение Денис » 20.11.2009 (Пт) 10:41

Хакер писал(а):приводить пример того, как какие-то парни поступили не по правилам


Кстати, после того, как Winamp продали AOL, последний из оставшихся разработчиков перешел таки "на светлую сторону". Foobar, как мы знаем, сделан в любимом тобой, нативном стиле.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Re: Изменить расположение меню

Сообщение Andrey Fedorov » 20.11.2009 (Пт) 12:27

Alexandrius писал(а):Если рисовать заголовок окна самому, заливать его в качестве фона для формы с BorderStyle 0, то как можно настроить расположение меню, например опустить его ниже на 30 пикселей?


Подобным не занимался, но ведь тут все вроде примитивно - можно форму с меню расположить на родительской с помощью того же SetParent - как итог будет менюшка там где ты хочешь...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...


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

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

Сейчас этот форум просматривают: AhrefsBot и гости: 21

    TopList