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

Вниз

Меню на раб столе   Найти похожие ветки 

 
Sco ©   (2006-07-02 08:44) [0]

Всем привет! Решил написать прогу, которая выводит на рабочем столе сверху меню ( прямо на рабочем столе, чтобы

она там жила). И не получаются следующие вещи:
1 Как привязать мою прогу к рабочему столу? Чтобы при нажатии Win-D (сворачивание на раб.стол) прога оставалась

на рабочем столе.
2 Я решил реализовать это меню как сильно затемнённый участок раб.стола (прямоугольником), мне кажется что так

лучше, ведь обои бывают разные. Или лучше сделать скины? Так вот проблема: как скопировать из рисунка только

определённую область и как её потом затемнить?
Почему мне нужна ета прога? Просто меню винды не удобное, оно часто висит, когда ищет иконки к подменюшкам. У

меня на компе много прог, игр, музыки и т.д. - и добираться до етого всего проводником надоело - вот и решил

сделать такую прогу. Видел подобную - встраивается в трей и срабатывает как меню - но она неудобная в

использовании, в трее значок маленький. Посоветуйте какуюнидь прогу или по пункту 1-2, буду очень благодарен!


 
pushkin42 ©   (2006-07-02 10:48) [1]

Делаешь форму, которая не реагирует на нажатия системных клавиш (типа отлов Windows+D, Ctrl+Alt+D) и ставишь на неё FormStyle := fsStayOnTop, чтобы не замещалась другими приложениями. А уж на форму пихай всё, что вздумается ;-)


 
RzCoDer ©   (2006-07-02 10:57) [2]

Пишешь свой explorer.exe и реализовываешь хоть 3д интерфейс на рабочем столе


 
PSPF2003 ©   (2006-07-02 11:50) [3]


> Делаешь форму, которая не реагирует на нажатия системных
> клавиш (типа отлов Windows+D, Ctrl+Alt+D) и ставишь на неё
> FormStyle := fsStayOnTop, чтобы не замещалась другими приложениями.
>  А уж на форму пихай всё, что вздумается ;-)

В этом нет необходимости. Уберешь с панели задач свое приложение, FormStyle := fsStayOnTop и все.


 
OSokin ©   (2006-07-02 15:43) [4]

Можно отлавливать позицию мыши и ее состояние


 
PSPF2003 ©   (2006-07-02 15:49) [5]

Удалено модератором


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

pushkin42 ©   (02.07.06 10:48) [1]
Делаешь форму, которая не реагирует на нажатия системных клавиш (типа отлов Windows+D,

удачи...


 
antonn ©   (2006-07-02 17:22) [7]

Sco ©   (02.07.06 8:44)
1. Сделать парентом формы окно рабочего стола. Недостатки - при крушении explorer"а будет неприятно. Да еще хинты не показываются... И еще showmodal от других окон не сработают - будет постоянный доступ к приклеенному окну.
2. Для win2k и выше можно воспользоваться "оверлейными" способностями ОС. Например прозрачность менять у черного окна:
procedure TMainMonitor.trans(i:byte);
var
 SetLayeredWindowAttributes : TSetLayeredWindowAttributes;
 hUser32 : HINST;
begin
 SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_LAYERED);
 hUser32 := LoadLibrary("user32.dll");
 if hUser32 <> 0 then
 begin
   try
     SetLayeredWindowAttributes := GetProcAddress(hUser32, "SetLayeredWindowAttributes");
     if Assigned(@SetLayeredWindowAttributes) then
       SetLayeredWindowAttributes(Handle, 0, i, 2);
   finally
     FreeLibrary(hUser32);
   end;
 end;
end;


 
PSPF2003 ©   (2006-07-02 17:30) [8]


> Почему мне нужна ета прога? Просто меню винды не удобное,
>  оно часто висит, когда ищет иконки к подменюшкам. У меня
> на компе много прог, игр, музыки и т.д. - и добираться до
> етого всего проводником надоело

А я себе сделал а-ля проводник только из меню. (Живет на рабочем столе и ни чем, ни питается) Очень удобно.


 
PSPF2003 ©   (2006-07-02 17:39) [9]


> как скопировать из рисунка только определённую область

procedure TCanvas.CopyRect(const Dest: TRect; Canvas: TCanvas;
 const Source: TRect);

> как её потом затемнить

Не знаю, возможно, добавляя цвет попиксельно


 
Ketmar ©   (2006-07-02 17:41) [10]

AlphaBlend()


 
PSPF2003 ©   (2006-07-02 17:44) [11]


> Ketmar ©   (02.07.06 17:41) [10]
> AlphaBlend()

Это прозрачность, а не затемнение...


 
Ketmar ©   (2006-07-02 17:53) [12]

Удалено модератором


 
PSPF2003 ©   (2006-07-02 18:23) [13]

Удалено модератором


 
Ketmar ©   (2006-07-02 18:50) [14]

Удалено модератором


 
Sco ©   (2006-07-03 08:35) [15]

1. Сделать парентом формы окно рабочего стола. Недостатки - при крушении explorer"а будет неприятно. Да еще хинты не показываются... И еще showmodal от других окон не сработают - будет постоянный доступ к приклеенному окну.
-Мне надо чтобы форма была активна только тогда когда всё свёрнуто!

2. Для win2k и выше можно воспользоваться "оверлейными" способностями ОС. Например прозрачность менять у черного окна:
-У чёрного то есть у главного? Типа если не всё свёрнуто то прозрачно?

Интересно, а чем она там питаться будет ярлыками?
-Вопросами глупых юзверей

Вывод: нормально ето не сделать? типа ХРюша будет гнать по чёрному?
И ещё один вопрос админу - чо то до меня не доходит почему ету тему переместили в конферен. для начинающих? Я понимаю что я ни мастер и не продвинутый программер, но по моему тема не из простых!


 
PSPF2003 ©   (2006-07-03 08:48) [16]

Удалено модератором


 
Sco ©   (2006-07-03 11:37) [17]

Юзверь - переделанное User. Таких зверей всегда в избытке! :)
Мысля одна пришла - сделать панель на "панели задач", графическую - как у WMPlayera. Ето реально? Если да - то как?


 
lobach ©   (2006-07-03 13:57) [18]


> explorer.exe

А не подгоните ключик реестра, которые explorer запускает?


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

в NT - HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon

Для каждого юзера отдельно.

в w9x по моему в system.ini


 
Sco ©   (2006-07-03 19:53) [20]

to lobach: есть классная замена explorer-у - Directory Opus!
______________
Но как сделать граф панель на панели задач?


 
PSPF2003 ©   (2006-07-03 21:57) [21]


> Мысля одна пришла - сделать панель на "панели задач", графическую
> - как у WMPlayera. Ето реально? Если да - то как?

Если наработки или мысли по реализации появятся поделись.


 
Ketmar ©   (2006-07-03 22:21) [22]

MSDN подаст.


 
PSPF2003 ©   (2006-07-03 22:27) [23]


> Ketmar

Да уж от вас дождешься :)



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

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

Наверх





Память: 0.5 MB
Время: 0.014 c
4-1144750388
plotn
2006-04-11 14:13
2006.07.23
как задать приоритет процесса? (ShellExecuteEx)


8-1139289302
Gorger
2006-02-07 08:15
2006.07.23
Наложение текстуры на форму и станд. контролы


15-1151066712
Alarm
2006-06-23 16:45
2006.07.23
О конференции "Начинающим"


4-1144642984
Vad
2006-04-10 08:23
2006.07.23
Меню чужого приложения


2-1151772908
Gizza
2006-07-01 20:55
2006.07.23
свои кнопки в messagedlg





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский