powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / (C++Builder) Как заставить MousePointer быть песочными часами
9 сообщений из 9, страница 1 из 1
(C++Builder) Как заставить MousePointer быть песочными часами
    #32226671
vlad451
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
(C++Builder) Как заставить MousePointer быть песочными часами
Вариант Screen->Cursor = crHourGlass не предлагать
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32226677
Alexey_VV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну загрузи другой курсор

а чем тебя crH.... не устраивает?
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32226679
vlad451
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело в том, что курсор в виде песочных часов нужен на то время,
пока грузится форма из DLL, которую вызывают из приложения.
Во время загрузки этой формы приложение отсутствует на экране,
поэтому Screen->Cursor = ... и не подходит. Может быть, можно как-то
при помощи Win API?
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32226692
Alexey_VV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Энто врятли.

Так сделай какое нибудь окошко загрузочное, а уж потом грузи остальное
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32226969
Фотография vdimas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
курсор устанавливается по WM_SETCURSOR, т.е. должно быть окно, над которым "пролетает" мыша, и уже энто окно ответит на WM_SETCURSOR (или его парент). Так что, давай окно!
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32229544
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотелось бы отметить, что окно может быть при этом прозрачным (реакция на сообщение erase background), т.е. будет просто курсор-часы.
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32229624
Фотография vdimas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Mik Prokoshin

Ну ежели так копать, то можно вообще без окна обойтись - глобальный хук повесить и перехватывать WM_SETCURSOR. Только вот, когда курсор в своем полете на другое окошко заползет с рабочего стола, то было бы честно позволить именно этому окошку управлять курсором. И как это сделать в твоем варианте, если визуально курсор находится над другим окном, а реально над твоим прозрачным? :) Упс...

Сплэш-скрин - вполне нормальное решение, и юзеры к нему, родному, привыкли...
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32229654
Фотография vdimas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ваще канечна надо было бы немного ногами попинать за это:

окно может быть при этом прозрачным (реакция на сообщение erase background)

Ибо тут прежде всего все-таки ж стиль WS_EX_TRANSPARENT. А уже потом некая реакция на WM_PAINT. (WM_ERASEBACKGROUND может даже и не приходить, если чуть-чуть захотеть )

Но смысл, все-равно, ясен :)
...
Рейтинг: 0 / 0
(C++Builder) Как заставить MousePointer быть песочными часами
    #32230757
Mik Prokoshin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2vdimas:
Исходно просили :
>Дело в том, что курсор в виде песочных часов нужен на то время,
пока грузится форма из DLL, которую вызывают из приложения.
Во время загрузки этой формы приложение отсутствует на экране,
поэтому Screen->Cursor = ... и не подходит. Может быть, можно как-то
при помощи Win API?
Можно делать заставку, можно просто менять курсор. Это - дизайн автора. Я лишь указал возможность, которую изначально автор подразумевал (IMHO). И если активно мое приложение, у него курсор - часики, то чегой-то я должен чужим окнам управление отдавать по клику. Сначала пусть их активизируют... :-)
А по поводу способа (erasebackground) - я это делал два года назад. Помню уже смутновато. Кому надо - пусть ищет готовые примеры. А то еще можно меня попрекнуть - почему код не выложил :-)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / (C++Builder) Как заставить MousePointer быть песочными часами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]