Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.27;
Скачать: CL | DM;

Вниз

Почему нет меню в дельфийских программах?   Найти похожие ветки 

 
Ююзер   (2006-07-31 07:54) [0]

Когда кликаешь на кнопку программы, в панели задач, правой клавишей мыши, то не появляется нормальное меню, а только свернуть и закрыть.

Как сделать, чтобы там было меню нормальное?

Дельфи 7. Просто откомпилируйте пустой юнит и увидите.


 
Ююзер   (2006-08-01 06:59) [1]

Мастера а?


 
begin...end ©   (2006-08-01 08:48) [2]

> Почему нет меню в дельфийских программах?

Forms.pas:

procedure TApplication.CreateHandle;
...
   SysMenu := GetSystemMenu(FHandle, False);
   DeleteMenu(SysMenu, SC_MAXIMIZE, MF_BYCOMMAND);
   DeleteMenu(SysMenu, SC_SIZE, MF_BYCOMMAND);
   if NewStyleControls then DeleteMenu(SysMenu, SC_MOVE, MF_BYCOMMAND);
...
end;


 
Gero ©   (2006-08-01 13:13) [3]

> [2] begin...end ©   (01.08.06 08:48)

Непонятно, зачем это нужно.


 
Rouse_ ©   (2006-08-01 13:20) [4]


> Непонятно, зачем это нужно.

Непонятно - зачем нужны сами эти меню. Ты ими когда нибудь пользовался?


 
Stakan ©   (2006-08-01 13:34) [5]

Rouse_ ©   (01.08.06 13:20) [4]
Пользуюсь постоянно. Правда в основном пунктом "Закрыть" :). В проигрывателях mp3 бывает удобно осуществлять навигацию и т.п.


 
Gero ©   (2006-08-01 13:35) [6]

> [4] Rouse_ ©   (01.08.06 13:20)

Нет, но это не повод нарушать стандарты майкрософта. Кроме того, почему SC_MAXIMIZE удаляют, а SC_RESTORE оставляют?


 
Stakan ©   (2006-08-01 13:37) [7]

begin...end ©   (01.08.06 8:48) [2]
Есть какой-нибудь простой способ вернуть эти пункты "в зад"?
(Без InsertMenu, InsertMenuItem)


 
Gero ©   (2006-08-01 13:39) [8]

> [7] Stakan ©   (01.08.06 13:37)

Без — нет такого способа.


 
Rouse_ ©   (2006-08-01 13:46) [9]


> Без — нет такого способа.

да ты шо? Forms.pas в папку с проектом и коментарь три строки удаления меню. И будет счастье :)


 
tesseract ©   (2006-08-01 14:25) [10]


> Rouse_ ©   (01.08.06 13:46) [9]


Да отлично работает.

Только не чего-то не врубился - переименовываешь unit  в myForms - и всё AV.

Ступор, надо покурить.


 
Eraser ©   (2006-08-01 14:31) [11]

> [0] Ююзер   (31.07.06 07:54)
> Когда кликаешь на кнопку программы, в панели задач, правой
> клавишей мыши, то не появляется нормальное меню, а только
> свернуть и закрыть.

проблема в том, что так кнопка пренадлежит окну Application, а не какой-либо из форм приложения. Бороться с этим можно, скрыв окно application и вынеся на панель задач кнопку, допустим, главной формы приложения.. только могут возникнуть непредвиденные трудности.


 
Rouse_ ©   (2006-08-01 14:52) [12]


> Только не чего-то не врубился - переименовываешь unit  в
> myForms - и всё AV.

а зачем переименовывать, используй как есть


 
Gero ©   (2006-08-01 15:03) [13]

> [9] Rouse_ ©   (01.08.06 13:46)

Некрасиво.


 
tesseract ©   (2006-08-01 15:08) [14]


> Rouse_ ©   (01.08.06 14:52) [12]


Да из-за чего непонятно.

в createform провал -  self у  Application  -  nil, т.е. объект не создаёться, хотя вроде всё ок .
А если не переименовывать - то всё ништяк.


 
Rouse_ ©   (2006-08-01 15:31) [15]


> Gero ©   (01.08.06 15:03) [13]
> > [9] Rouse_ ©   (01.08.06 13:46)
>
> Некрасиво.

коцать системное меню красиво? :)


 
Stakan ©   (2006-08-01 15:34) [16]

tesseract ©   (01.08.06 15:08) [14]
А модуль Controls где создаётся Application тоже правил?


 
Соло   (2006-08-03 07:33) [17]

Я не понял. Может кто нибудь код запостить, как это вернуть?
Или вернуть нельзя?



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

Текущий архив: 2006.08.27;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.05 c
15-1154435484
max999
2006-08-01 16:31
2006.08.27
Как лучше организовать обмен данными?


2-1154332057
Gamer
2006-07-31 11:47
2006.08.27
Перенести информацию (с картинками) с двух RichEdit ов в один


2-1155065333
ronyn
2006-08-08 23:28
2006.08.27
Windows feat ShellApi


15-1154159843
VanekTech
2006-07-29 11:57
2006.08.27
Установка JVCL


3-1150225565
molodoi
2006-06-13 23:06
2006.08.27
Фильтр по индексным полям