Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2012, 03:00   #1
akhtamar
Новичок
Джуниор
 
Регистрация: 21.02.2012
Сообщений: 1
По умолчанию пере- мещении колеса мыши и вывод информации об этом событии

предусмотрев обработку сообщения о пере-
мещении колеса мыши и вывод информации об этом событии

Пожалуйста помогите разобраться !




Код:
// Lab1.срр — "родная" Windows-программа для отображения текста в окне
#include <windows.h>
LRESULT WINAPI WindowProc(HWND hWnd, UINT message,
  WPARAM wParam, LPARAM lParam) ;

// Листинг WINAPP_1
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
                   LPSTR lpCmdLine, int nCmdShow)


{
  WNDCLASSEX WindowClass;     // Структура для хранения атрибутов окна
  static LPCTSTR szAppName = L"WinApp";     // Определить класс окна
  HWND hWnd;                                // Дескриптор окна
  MSG msg;                                  // Структура сообщения окна
  WindowClass.cbSize = sizeof(WNDCLASSEX);  // Установить размер структуры
  // Перерисовать окно при изменении размера
  WindowClass.style   = CS_HREDRAW | CS_VREDRAW;
  // Определить функцию - обработчик сообщений
  WindowClass.lpfnWndProc = WindowProc;
  WindowClass.cbClsExtra = 0;     // Никаких дополнительных байт после структуры
  WindowClass.cbWndExtra = 0;     // класса окна в экземпляре окна
  WindowClass.hInstance = hInstance;        // Дескриптор экземпляра приложения
  // Установить пиктограмму приложения по умолчанию
  WindowClass.hIcon = LoadIcon(0, IDI_APPLICATION);
  // Установить стандартный курсор мыши в виде стрелки
  WindowClass.hCursor = LoadCursor(0, IDC_ARROW);
  // Установить серую кисть для рисования фона
  WindowClass.hbrBackground =
                          static_cast<HBRUSH>(GetStockObject(GRAY_BRUSH));
  WindowClass.lpszMenuName = 0;          // Нет меню
  WindowClass.lpszClassName = szAppName; // Установить имя класса
  WindowClass.hIconSm = 0;               // Маленькая пиктограмма по умолчанию
  // Теперь зарегистрировать класс окна
  RegisterClassEx(&WindowClass);
  // Теперь можно создать окно
  hWnd = CreateWindow(
          szAppName,                       // Имя класса окна
          L"Окно Windows-приложения",      // Заголовок окна
          WS_OVERLAPPEDWINDOW,             // Стиль окна - перекрываемое
          CW_USEDEFAULT,          // Позиция на экране по умолчанию
          CW_USEDEFAULT,          // левого верхнего угла как х,у...
          CW_USEDEFAULT,          // Размер окна по умолчанию - ширина...
          CW_USEDEFAULT,          // ...и высота
          0,                      // Нет родительского окна
          0,                      // Нет меню
          hInstance,              // Дескриптор экземпляра программы
          0                       // Никаких данных для создания окна
        );
  ShowWindow(hWnd, nCmdShow);  // Отобразить окно
  UpdateWindow(hWnd);          // Заставить перерисовать клиентскую область окна
  // Цикл обработки сообщений
  while(GetMessage(&msg, 0, 0, 0) == TRUE)  // Получить сообщение
  {
    TranslateMessage(&msg);                 // Трансляция сообщения
    DispatchMessage(&msg);                  // Диспетчеризация сообщения
  }
  return static_cast<int>(msg.wParam);      // Конец, возврат в Windows
}

// Листинг WINAPP_2
LRESULT WINAPI WindowProc(HWND hWnd, UINT message,
	WPARAM wParam, LPARAM lParam , )
)
{
  HDC hDC ;                       // Дескриптор дисплейного контекста
  PAINTSTRUCT ps;;           // Структура, определяющая область рисования
  RECT aRect;                    // Рабочий прямоугольник
  switch(message)                // Обработка выбранных сообщений
  {
    case WM_LBUTTONDOWN:
	{
	
		break;
	}

	case WM_PAINT:
		hDC = BeginPaint(hWnd, &ps);                     // Сообщение для перерисовки окна
      
      // Получить верхний левый и нижний правый углы клиентской области
      GetClientRect(hWnd, &aRect);
    
      // Теперь отобразить текст в клиентской области окна
      DrawText(
             hDC,              // Дескриптор контекста устройства
             L"Текст выводится при перерисовке окна",
             -1,        // Признак строки, ограниченной null
             &aRect,    // Прямоугольник, в котором выполняется рисование текста
			 SelectObject(hDC,);
             DT_SINGLELINE|       // Формат текста - одна строка
             DT_CENTER|           //      - центрирование в строке
             DT_VCENTER);         //      - центрирование по высоте aRect
      EndPaint(hWnd, &ps);   // Завершить операцию перерисовки окна
      return 0;
    case WM_DESTROY:              // Окно уничтожается
      PostQuitMessage(0);
      return 0;
    default:            // Любые другие сообщения программу
// не интересуют, поэтому вызывается
                        // обработка сообщения по умолчанию
      return DefWindowProc(hWnd, message, wParam, lParam);
  }
}

Последний раз редактировалось Stilet; 21.02.2012 в 08:42.
akhtamar вне форума Ответить с цитированием
Старый 21.02.2012, 08:44   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
  switch(message)                // Обработка выбранных сообщений
  {
    case WM_MOUSEWHEEL:{MessageBoxA(...Типа сообщение...)}
...
Почитай как MessagBox описан и какие в него параметры нужны.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рандомный объект в Дельфи, перемещающийся по форме при событии клика мыши Raydi Помощь студентам 1 06.11.2010 19:54
Обработка колеса мыши в TScrollBox mutabor Общие вопросы Delphi 6 01.04.2010 10:17
Ввод/ вывод информации acmilan PHP 28 05.06.2009 21:36
Вывод информации из БД Alamez Помощь студентам 2 18.05.2009 10:07
использование колеса мыши Bayazet Общие вопросы Delphi 8 27.01.2009 14:39