|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
Как узнать, на какое количество пикселей вниз, система по умолчанию, отодвигает подсказку от курсора мыши?17.10.2023, 14:00. Показов 4381. Ответов 88
Метки нет (Все метки)
Как узнать, на какое количество пикселей вниз, система по умолчанию, отодвигает подсказку от курсора мыши?
Создаю свою подсказку и решил сделать автоматическое перемещение подсказки в след за мышкой. Но вот появилась проблема я не знаю на какое количество пикселей вниз, система, отодвигает подсказку от курсора мыши? Я даже не знаю как определить размер по высоте курсора мыши. Знаю что в разных DPI курсор мыши может быть разный. Сам тултип в системе точно знает на какое количество пикселей вниз от мышки ему перемещается. Но я не знаю этой формулы. Неужели придётся ковырятся в исходниках икспи целую неделю чтобы выяснить или есть где-то документация? Добавлено через 6 минут Кстати у меня по моему на 18 пикселей вниз и на 0 пикселей влево, система по умолчанию отодвигает подсказку от курсора мыши. Но как это определить ведь в разных системах по разному.
1
|
|
| 17.10.2023, 14:00 | |
|
Ответы с готовыми решениями:
88
Как узнать размер курсора мыши
Как узнать координаты курсора мыши |
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 18.10.2023, 12:16 [ТС] | |
|
1
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||||||
| 20.10.2023, 12:34 [ТС] | ||||||
|
Наконец-то! Я сделал, то что хотел:
1
|
||||||
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
|
| 21.10.2023, 19:22 | |
|
HackerVlad, Только добавил возможность нажимать кнопки на твоей форме.
1
|
|
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
|
| 21.10.2023, 20:08 | |
|
А вот в NET ,код в папке.
1
|
|
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
|
| 21.10.2023, 20:10 | |
|
Хм...Два раза почему то
0
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||
| 21.10.2023, 20:30 [ТС] | ||
|
Добавлено через 1 минуту Тим70, есть такие кнопки Tab и Enter Добавлено через 4 минуты Тим70, спасибо большое за внимание к моему проекту, но у тебя же жёстко заданная цифра 15)))))) правда которую можно менять в текстбоксе, но всё равно не вычисляет реальный размер курсора с помощью API Добавлено через 2 минуты Тим70, у меня кстати твои EXE запускаются только со второго раза. Запускаю первый раз - висит, приходится через диспетчер задач завершать процесс (так как программы нигде не видно) и запускается только со второго раза. Неужели все проги на VB.Net так коряво себя ведут... Прошлые твои проекты так же запускались.... Добавлено через 2 минуты Тим70, и иконки нету в твоей экзэшке
0
|
||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 21.10.2023, 20:36 [ТС] | |
|
Самая большая проблема моего проекта в том, что я не умею определять прозрачные пиксели в растровых чёрно-белых иконках, которые имеют маску но не имеют битмэп почему-то. А с этой маской я работать не умею - это очень сложно. По этой причине и возникает этот корявый глюк, что у меня при наведении мышки на текстовое поле любое и при появлении мышки в виде каретки чёрно-белой то тогда у меня и не вычисляет уже размер мыши. Единственное что в таком случае приходит на ум, это как полумера, это опять таки жёстко заданные цифры, в случае с чёрно-белым курсором (на текстовых полях у меня именно чёрно-белый курсор). Поэтому вот проект без подглючивания мышки на текстовых полях, но с жёстко-заднной цифрой, в случае наведения мыши на текстовое поля, и возникновения чёрно-белого курсора, если он у вас чёрно-белый конечно, если у вас цветное изображение то всё в идеале ок будет.
0
|
|
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
|||
| 21.10.2023, 20:38 | |||
|
0
|
|||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 21.10.2023, 20:50 [ТС] | |
|
Тим70, Вычислить эти знаменитые 32х32 проще простого! Гораздо сложнее рассчитывать все прозрачные пиксели. Мышка имеет 19 пикселей в высоту. А все остальные 13 снизу это просто пустота и всё. Я тщетно пытался написать красивую функцию которая определит реальный размер курсора отбросив все пустые пиксели снизу.
Добавлено через 35 секунд К сожалению в WinAPI нет такой функции, это уже косяк майкрософта. Добавлено через 1 минуту Мало того и кода такого на VB6 в интернете тоже нигде нет. Добавлено через 5 минут Но в операционной системе Windows всё же есть такая функция. Она используется тултипом как раз таки. При появлении подсказки, тултип сам рассчитывает как надо размер мыши, обращаясь к этой функции. Но она закрытая и не имеет публичного импорта в таблице импорта , её нельзя вызвать как обычное Nativ API. Это самая большая проблема.
0
|
|
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
||
| 21.10.2023, 21:03 | ||
|
1
|
||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||
| 21.10.2023, 21:16 [ТС] | ||
|
Тим70, вроде немного по лучше стало запускаться
Добавлено через 2 минуты Добавлено через 1 минуту А не как в TotalCommander'е тултип хоть и есть при наведении на любой файл в списке, но он тоже отрисовывается жёстко заданными цифрами 15 там или 16 пикселей отодвигают, хотя программу вроде как команда профессионалов делала но тут опозорились
0
|
||
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
||
| 21.10.2023, 21:51 | ||
|
0
|
||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
||||||
| 21.10.2023, 21:57 [ТС] | ||||||
|
Тим70, эта функция есть написанная на Си, но я понятия не имею как её переписать в VB
Тут самое сложное для меня это как считать прозрачные пиксели, получив массив пикселей маски через GetBitmapBits. Жаль The Trick не помог, четвёртый день мучаюсь с этим. Добавлено через 1 минуту Тим70, вот она: https://referencesource.micros... up.cs,2743 Может её можно как-то вызвать в Vb.Net из твоего фреймворка. Там вроде фреймворк 4.8
1
|
||||||
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|
| 21.10.2023, 22:23 [ТС] | |
|
The trick, а там не надо перебирать биты? я думал там надо из байтового массива, брать один байт разлагать этот один байт на 8 битов а это очень сложно
может можно просто перебирать сразу байты? не обращаясь к битам? Добавлено через 57 секунд The trick, и байтовый массив там надо одномерный? или двухмерный? битового же массива не бывает
0
|
|
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
||
| 21.10.2023, 22:25 | ||
|
1
|
||
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
|
| 21.10.2023, 22:28 | |
Сообщение было отмечено HackerVlad как решение
Решение
Перевод во вложении,но врятли это тебе поможет.
1
|
|
|
Любитель
1047 / 757 / 161
Регистрация: 27.01.2019
Сообщений: 1,531
|
|
| 21.10.2023, 22:31 | |
|
А насчет типтул,в этой проге я его настраивал.Поставь галочку на "Маркер" и кликни правой кнопкой по карте.
1
|
|
|
Вернулся
1748 / 644 / 45
Регистрация: 10.09.2021
Сообщений: 2,786
|
|||||
| 21.10.2023, 22:46 [ТС] | |||||
|
Добавлено через 3 минуты Добавлено через 56 секунд Добавлено через 3 минуты Добавлено через 1 минуту Тим70, по крайней мере из твоего перевода я увидел, что в коде используется обычный байтовый массив. И биты (одну восьмую часть байта) мне получать не надо вообще, как я думал... Добавлено через 37 секунд А у зэ трика на картинке в примере было именно по битам зажжён пиксель или нет... Добавлено через 2 минуты Но некоторые вещи я всё равно не знаю, я же отстал от жизни, мне часто бывает непонятен синтаксис, например OrElse и AndAlso как мне это переписать в VB6...
0
|
|||||
|
Модератор
|
||
| 21.10.2023, 23:02 | ||
|
1
|
||
| 21.10.2023, 23:02 | |
|
Как узнать координаты курсора мыши и отобразить их? c++
При наведении курсора мыши на картинку получить матрицу 8х8 со значениями яркости пикселей
Когда делаю прокрутку мыши вниз она крутит страницу вниз и отдача идёт чуть вверх как исправить? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
|
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
|
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал.
Оно само - говорит.
Кто слышит тот слышит.
|
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было
ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась.
Первый вариант. . .
|
|
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2.
Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
|
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет.
Но обычно это 50 лет и более.
Наверное, закисление почвы происходит сезонно в средней. . .
|
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|