Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
LPPOINT Point); // адрес структуры содержащей, координаты
Для того чтобы получить экранные координаты курсора мыши необходимо вызывать функцию
BOOL GetCursorPos (LPPOINT aPoint);
// адрес структуры с координатами курсора
Существует и парная ей функция, которая устанавливает курсор в заданную позицию.
BOOL SetCursorPos(
int XPos, // горизонтальная позиция
int YPos); // вертикальная позиция
Изменение некоторых параметров окна производится функцией.
BOOL MoveWindow(
HWND Wnd, // Описатель окна
int Hor, // горизонтальная координата новой позиции окна
int Vert, // вертикальная координата новой позиции окна
int Width, // новая ширина
int Height, // новая высота
BOOL Repaint);
// Определяет, будет ли окно перерисовываться (TRUE)
Для получения и установки параметров полосы прокрутки можно воспользоваться следующей парой функций.
BOOL GetScrollInfo(
HWND Wnd, // описатель окна с полосой прокрутки
int Bar, // тип полосы прокрутки (SB_HORZ - горизонтальная,
// SB_VERT -вертикальная)
LPSCROLLINFO ScrollInfo);
// указатель на структуру с параметрами скроллинга
int SetScrollInfo(
HWND Wnd, // описатель окна
int fnBar, //тип полосы прокрутки (SB_HORZ - горизонтальная,
// SB_VERT -вертикальная)
LPSCROLLINFO ScrollInfo,
// указатель на структуру с параметрами скроллинга
BOOL fRedraw); // флаг перерисовки (TRUE - перерисисовывать)
Следующая функция позволяет прокручивать содержимое клиентской области окна, однако ее единицы зависят от устройства.
int ScrollWindowEx(
HWND Wnd, // описатель окна
int dx, // горизонтальная величина скроллинга.
//Отрицательная – «крутить» влево
int dy, // вертикальная величина скроллинга.
// Отрицательная – «крутить» вверх
CONST RECT *Scroll,//структуры с прямоугольником прокрутки,
// TRUE - прокручивать все
CONST RECT *Clip,
// адрес структуры с прямоугольником-клипом
HRGN RegionUpdate, // обычно NULL
LPRECT Update, // обычно NULL
UINT flags); // параметры прокрутки, обычно SW_ERASE
Еще одна группа функций позволяет направлять и сбрасывать "мышиные" сообщения, связанные с конкретными окнами.
// Установка захвата сообщений
HWND SetCapture(HWND hWnd); // описатель окна
HWND GetCapture(VOID)
// получение идентификатора окна, перехватывающего сообщения
BOOL ReleaseCapture(VOID)
// сброс перехвата сообщений
Варианты заданий к лабораторной работе №6
Вариант №1
Разработать программу, которая демонстрирует эффект «убегания окна от курсора» при его попадании на клиентскую область окна. Завершение «убегания» достигается с помощью двойного щелчка кнопки мыши.
Вариант №2
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании на клиентскую область окна. «Отлипание окна от курсора» производится последовательным перемещением курсора вверх, а потом вниз.
Вариант №3
Разработать программу, которая демонстрирует эффект «убегания окна от курсора» при его попадании на неклиентскую область окна. Завершение «убегания» достигается с помощью двойного щелчка кнопки мыши.
Вариант №4
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании на заголовок окна. Дальнейшее перемещение влево-вправо блокируется, окно может перемещаться только вверх и вниз. «Отлипание окна от курсора» производится двойным щелчком кнопки мыши.
Вариант №5
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании на заголовок окна. Дальнейшее перемещение вверх-вниз блокируется, окно может перемещаться только влево и вправо. «Отлипание окна от курсора» производится двойным щелчком кнопки мыши.
Вариант №6
Разработать программу, которая создает окно с горизонтальной и вертикальной полосами прокрутки. При щелчке кнопки мыши по заголовку окна блокируется вертикальная прокрутка. Блокировка снимается при щелчке кнопки мыши по вертикальной полосе.
Вариант №7
Разработать программу, которая создает окно с горизонтальной и вертикальной полосами прокрутки. При щелчке кнопки мыши по заголовку окна блокируется горизонтальная прокрутка. Блокировка снимается при щелчке кнопки мыши по горизонтальной полосе.
Вариант №8
Разработать программу, которая создает окно. Закрытие окна должно выполняться щелчком кнопки по значку сворачивания, при этом должно создаваться новое окно с таким же стилем. Однократный щелчок кнопки по значку закрытия не приводит к выполнению этого действия. Двойной щелчок по этому значку завершает работу программы.
Вариант №9
Разработать программу, которая создает два окна. Действия по сворачиванию, разворачиванию и закрытию одного окна должны выполняться над обоими окнами.
Вариант №10
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем щелчке кнопки мыши по какой-либо из полос прокрутки. «Отлипание окна от курсора» производится трехкратным щелчком кнопки мыши по заголовку окна.
Вариант №11
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем щелчке кнопки мыши по заголовку окна. «Отлипание окна от курсора» производится трехкратным щелчком кнопки мыши по заголовку окна.
Вариант №12
Разработать программу, которая создает окно с горизонтальной и вертикальной полосами прокрутки. При щелчке кнопки мыши по вертикальной полосе прокрутки окна блокируется горизонтальная прокрутка. Блокировка снимается при щелчке кнопки мыши по вертикальной полосе.
Вариант №13
Разработать программу, которая создает окно с горизонтальной и вертикальной полосами прокрутки. При щелчке кнопки мыши по горизонтальной полосе прокрутки окна блокируется вертикальная прокрутка. Блокировка снимается при щелчке кнопки мыши по горизонтальной полосе.
Вариант №14
Разработать программу, которая создает окно. Закрытие окна должно выполняться щелчком кнопки по значку разворачивания окна, при этом должно создаваться новое окно с таким же стилем. Однократный щелчок кнопки по значку закрытия не приводит к выполнению этого действия. Двойной щелчок по этому значку завершает работу программы.
Вариант №15
Разработать программу, которая создает три окна. Действия по сворачиванию и разворачиванию одного окна должны выполняться над обоими окнами.
Вариант №16
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем двойном щелчке кнопки мыши по какой-либо из полос прокрутки. «Отлипание окна от курсора» производится повторным двойным щелчком кнопки мыши по полосе прокрутки.
Вариант №17
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем двойном щелчке кнопки мыши по заголовку окна. «Отлипание окна от курсора» производится повторным двойным щелчком кнопки мыши по заголовку окна.
Вариант №18
Разработать программу, которая создает окно. Закрытие окна должно выполняться щелчком кнопки по значку закрытия окна, при этом должно создаваться новое окно с таким же стилем. Двойной щелчок по этому значку завершает работу программы.
Вариант №19
Разработать программу, которая создает три окна. Действия по сворачиванию и закрытию одного окна должны выполняться над обоими окнами.
Вариант №20
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем щелчке кнопки мыши по вертикальной полосе прокрутки. «Отлипание окна от курсора» производится повторным щелчком кнопки мыши по этой же полосе прокрутки.
Вариант №21
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем щелчке кнопки мыши по горизонтальной полосе прокрутки. «Отлипание окна от курсора» производится последовательным перемещением курсора влево-вправо-вверх.
Вариант №22
Разработать программу, которая создает три окна с заголовками
«Окно1», «Окно2» и «Окно3». Щелчок кнопки мыши по значку закрытия «Окна1» закрывает только «Окно2» и «Окно3», а щелчок по такому же значку на «Окне2» и «Окне3» приводит к завершению работы программы.
Вариант №23
Разработать программу, которая создает три окна. Действия по
разворачиванию и закрытию одного окна должны выполняться над обоими окнами.
Вариант №24
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем щелчке управляющей кнопки мыши по системному меню. «Отлипание окна от курсора» производится повторным щелчком управляющей кнопки мыши по любой полосе прокрутки.
Вариант №25
Разработать программу, которая демонстрирует эффект «прилипания окна к курсору» при его попадании и последующем щелчке вспомогательной кнопки мыши по системному меню. «Отлипание окна от курсора» производится последовательным перемещением курсора вправо-влево-вниз.
Лабораторная работа № 7. Управление каталогами и файлами в ОС Windows
Цель: Изучение механизма управления каталогами в операционной системе Windows.
Задачи:
1. Изучение теоретического материала по управлению каталогами.
2. Составление алгоритма программы.
3. Программная реализация.
Ход работы:
1. Ознакомиться с описанием функций WinAPI по управлению каталогами и файлами и примерами их использования.
2. Получить индивидуальный вариант задания у преподавателя, в котором должны быть указаны операции для манипулирования с файлами и/или каталогами.
3. Разработать программу в соответствии с полученным заданием.
4. Написать отчет и представить его для защиты лабораторной работы вместе с исполняемыми модулями программы и их исходными текстами.
Ход защиты:
1. Продемонстрировать преподавателю разработанную программу.
2. Пояснить код разработанной программы.
Большинство современных ОС поддерживает логическую модель
данных, основанную на неких абстрактных единицах, называемых файлами, которые могут группироваться по разным признакам в так называемые
каталоги. В ОС Windows NT/2000/XP есть несколько функций, которые могут оперировать с каталогами и файлами. Созданием файла занимается функция
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |


