ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Кнопка в строке меню
  #1  
Старый 14.07.2008, 23:27
VictorTiamat
Новичок
Регистрация: 14.07.2008
Сообщений: 5
Провел на форуме:
1354

Репутация: 2
По умолчанию Кнопка в строке меню

Привет всем.

Такой вот глупый вопрос. Могу ли я разместить кнопку на строке меню, скажем в правом краю меню и если можно это сделать, то как?
Я вот не уверен что это реально.

Спасибо.
 
Ответить с цитированием

  #2  
Старый 14.07.2008, 23:58
YoYo Factory
Участник форума
Регистрация: 25.03.2008
Сообщений: 138
Провел на форуме:
1105166

Репутация: 201
Отправить сообщение для YoYo Factory с помощью ICQ
По умолчанию

Вопрос совсем не глупый, все реально!
Код:
<input name="filex1" size="30"><input value="Поиск" type="submit">
Вот к примеру...
юзай тег <input>

Последний раз редактировалось YoYo Factory; 15.07.2008 в 00:01..
 
Ответить с цитированием

  #3  
Старый 15.07.2008, 00:05
VictorTiamat
Новичок
Регистрация: 14.07.2008
Сообщений: 5
Провел на форуме:
1354

Репутация: 2
По умолчанию

Это канечно хорошо. Я юзаю тот тег и кнопку поиск уже целый день и по многим форумам. Но если на форумах кроме ответа "Юзай поиск" ничего сказать не могут. Ну.... видать такой это форум. Очень жаль что тут зарегался. Удачи всем.
 
Ответить с цитированием

  #4  
Старый 15.07.2008, 00:14
YoYo Factory
Участник форума
Регистрация: 25.03.2008
Сообщений: 138
Провел на форуме:
1105166

Репутация: 201
Отправить сообщение для YoYo Factory с помощью ICQ
По умолчанию

Цитата:
Сообщение от ChaaK  
Задай конкретнее вопрос!! Кнопка на меню чего? В какой среде Vs, дельфи? Такое ощущение что ТС - вебкил.

2ее фактори:
причем тут html ?
ТС имел ввиду к примеру как в гугле!
просто не там создал темку ( С/С++, C#, Delphi, .NET, Asm )
 
Ответить с цитированием

  #5  
Старый 15.07.2008, 00:15
VictorTiamat
Новичок
Регистрация: 14.07.2008
Сообщений: 5
Провел на форуме:
1354

Репутация: 2
По умолчанию

MFC dialog based application. Мне нужно убрать полосу тайтла окна и собмтвенно кнопки минимайз, максимайз и клозе и реализовать эти кнопки на уровне меню.
 
Ответить с цитированием

  #6  
Старый 15.07.2008, 00:16
VictorTiamat
Новичок
Регистрация: 14.07.2008
Сообщений: 5
Провел на форуме:
1354

Репутация: 2
По умолчанию

Ну если Mfc ни есть С++ то..... Видимо точно в гугль.
 
Ответить с цитированием

  #7  
Старый 15.07.2008, 00:22
VictorTiamat
Новичок
Регистрация: 14.07.2008
Сообщений: 5
Провел на форуме:
1354

Репутация: 2
По умолчанию

Какими бы нибыли познания, но я написал тему в правильную категорию. Познаний достаточно в С++, но вот с таким решением пока не сталкивался. Есть только вариант дочернего диалога с кнопками. Но оно не красиво смотрится.
 
Ответить с цитированием

  #8  
Старый 15.07.2008, 23:36
SlyBit
Познающий
Регистрация: 04.07.2008
Сообщений: 56
Провел на форуме:
390892

Репутация: 60
По умолчанию

VictorTiamat

Если я конечно правильно понял, то тебе нужно модифицировать системное меню окна.

1. Добавляем новый элемент меню

Хэдл меню получаешь функцией GetSystemMenu, вставляешь новые элементы InsertMenu.

Код:
#define SC_TEST WM_USER+1
HWND hWindow;
HMENU hMenu;
    
// hWindow - хэдл твоего (можно и чужого) окна
hMenu = GetSystemMenu(hWindow, 0);

// Вставляем разделитель в конец меню
InsertMenu(hMenu, -1, MF_BYPOSITION |MF_SEPARATOR, 0, 0);

// Вставляем новый элемент
InsertMenu(hMenu, -1, MF_BYPOSITION | MF_STRING, SC_TEST, "Test");
Также можно удалить ненужные элементы системного меню RemoveMenu или изменить существующие SetMenuItemInfo (читай MSDN).

2. Обрабатываем нажатия на меню

Для каждого окна есть свой зарегистрированный класс (RegisterClassEx). Элемент lpfnWndProc структуры WNDCLASSEX задает функцию, обрабатывающую оконные сообщения. В Visual Studio 2005 в шаблонном win32 приложении это будет функция WndProc. Собственно в ней мы и будем обрабатывать клики на системное меню.

Код:
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    int wmId, wmEvent;
    PAINTSTRUCT ps;
    HDC hdc;

    switch (message)
    {
        case WM_SYSCOMMAND:
            wmId    = LOWORD(wParam);
            wmEvent = HIWORD(wParam);
            
            switch(wmId)
            {
                case SC_CLOSE: // Закрыть
                    // Тут наша обработка события
                    MessageBoxA(0, "SC_CLOSE", 0, 0);
                    // return 1, чтобы прекратить обработку события, т.е. не закрывать
                    return 0;
                case SC_MAXIMIZE: // Развернуть
                    return 0; 
                case SC_MINIMIZE: // Свернуть
                    return 0; 
                case SC_MOVE: // Переместить
                    return 0; 
                case SC_SIZE: // Размер
                    return 0; 
                case SC_TEST: // Test
                    return 0; 
            }
        case WM_COMMAND:
             // ...CUT...
    }
    return 0;
}
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Полезные советы по Windows. UnDRaux Windows 7 28.05.2008 18:16
как взломать домофон ReZiDeNT Аппаратное обеспечение 5 11.01.2008 17:03
секреты и коды для сотовых телефонов ))) dinar_007 Сотовый фрикинг 32 05.08.2006 17:06
КНОПКА АДМИНСКАЯ Macroeject PHP, PERL, MySQL, JavaScript 3 30.01.2006 02:25
Коды silveran Сотовый фрикинг 4 18.10.2005 14:37



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ