мыш и консоль
Участников: 4
FreeBasic :: Программирование :: Общее
Страница 1 из 1
мыш и консоль
Работает ли мыш в консольном окне
screen 0
У меня не получаеться через getmouse.
Написал игрушку. В графическое окно меня не катит делать, а текстовое вполне подходит.
Только вот рулить можно с клавишь...
А хочу и мышу запрячь.
screen 0
У меня не получаеться через getmouse.
Написал игрушку. В графическое окно меня не катит делать, а текстовое вполне подходит.
Только вот рулить можно с клавишь...
А хочу и мышу запрячь.
Re: мыш и консоль
Попробуй всеми возможными способами. Например через dpmi. Есть даже пример лежащий в Examples>DOS>mouse.bas, и еще где-то один пример для мышки был, но сейчас уже не вспомню. По-моему через GetMouse он и как раз работал в консольном окне.
Andrew- Сообщения : 45
Дата регистрации : 2008-09-23
Возраст : 35
Откуда : Киев
Re: мыш и консоль
Уф! Вопрос снимается.
Это я сам криворукий.
Немного передлав пример он у меня заработал как нужно.
Теперь бы ещё разобраться, на какую строку и символ указывает курсор. Это происходит не очень понятно.
А если у меня элемент ещё и по окну прыгает, так вообще кошмар.
Ну, чтож буду тестировать.
Это я сам криворукий.
Немного передлав пример он у меня заработал как нужно.
Теперь бы ещё разобраться, на какую строку и символ указывает курсор. Это происходит не очень понятно.
А если у меня элемент ещё и по окну прыгает, так вообще кошмар.
Ну, чтож буду тестировать.
Re: мыш и консоль
Хм. Тут ещё проблема.
У меня всё крутиться в цикле. Причём там ещё
sleep 50
Стоит.
В принципе я могу его уменьшить до
sleep 1
А ещё меньше, комп будет грузить шибко сильно. Причём бесполезной нагрузкой.
Но вот мыша со слипом понимает кнопки только если их нажать и держать. А клики до неё не доходят.
Нет ли какого-нибудь буфера?
У меня всё крутиться в цикле. Причём там ещё
sleep 50
Стоит.
В принципе я могу его уменьшить до
sleep 1
А ещё меньше, комп будет грузить шибко сильно. Причём бесполезной нагрузкой.
Но вот мыша со слипом понимает кнопки только если их нажать и держать. А клики до неё не доходят.
Нет ли какого-нибудь буфера?
Re: мыш и консоль
1.Когда нажимается кнопка мыши, переменная(какая-нибуть) станет равна 1, также "запомни" положение мыши на экране.
2. Когда мышь отпускается, сделай проверку этой переменной и расстояние до предыдущего положения мыши. Если расстояние меньше определённого значения, то активируй кнопку.
(извини неправильно тебя понял)
Мой вопрос:
Как изменять вид курсора?
Gena- Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва
Re: мыш и консоль
а зачем его менять, я так понимаю надо сделать в графическом режиме свой курсорчик, предложение у мня такое (обычно так и делают).
Есть Апи функция у винды (точно ее непомню, гугл те в помощь), которая отключает вообще курсор, после чего сделать спрайт курсора какой угодно и перемещать его по экрану в зависимости от координат мыши
Есть Апи функция у винды (точно ее непомню, гугл те в помощь), которая отключает вообще курсор, после чего сделать спрайт курсора какой угодно и перемещать его по экрану в зависимости от координат мыши
Re: мыш и консоль
Всё бы хорошо, да я просто не успеваю засеч сам клик.
Если кнопку мыши нажать и немного подержать, то всё нормально.
А кратковременный клик, прога не замечает. Если конечно не убирать sleep, но он мне нужен. Да и других вычислений там хватает.
Если кнопку мыши нажать и немного подержать, то всё нормально.
А кратковременный клик, прога не замечает. Если конечно не убирать sleep, но он мне нужен. Да и других вычислений там хватает.
Re: мыш и консоль
Да. Я такое уж делал, но возникает такая фигня - если уж рисовать спрайт, то надо запоминать в массив фон, а если он изменился?, тем мне и нравится стандартный курсор, тем что не портит картинки и заморачиваться не нужно. Может есть какая-то ф-ия с подгрузкой картинки мыши непосредственно в систему?предложение у мня такое
Gena- Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва
Re: мыш и консоль
да есть наверно, все через те же апишки, но на счет фона со спрайтом, то можно использовать маску, есть встроенные средства в FB, тока пардон непомню как точно, но я это делал
Re: мыш и консоль
Да-да, можно ещё запомнить в массив AS DOUBLE, пнятно, я о другом - фон может меняться (анимация идёт за курсором), а когда мышара смещается появляется старая картинка.
(напомню про маску - там надо использовать 2 массива, один на белом фоне, другой на чёрном+ PUT ы с AND и OR)
xp=INT(xMouse /
yp=INT(xMouse /
(это в скрине 13 - там шрифт 8х
(напомню про маску - там надо использовать 2 массива, один на белом фоне, другой на чёрном+ PUT ы с AND и OR)
Это легко -Теперь бы ещё разобраться, на какую строку и символ указывает курсор.
xp=INT(xMouse /
yp=INT(xMouse /
(это в скрине 13 - там шрифт 8х
Gena- Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва
Re: мыш и консоль
Вот что нарыл в интернете - наверно подойдёт:
- Код:
#include "fbgfx.bi" 'включить fbgfx.bi
using FB 'использовать freebasic
dim e as EVENT 'переменная e как событие
screen 13
do
if (screenevent(@e)) then
if e.type=EVENT_MOUSE_MOVE then cls:locate 10,10:print e.x,e.y ' координаты x,y
if e.type=EVENT_MOUSE_DOUBLE_CLICK then end 'если двойное нажатие - ВЫХОД
end if
loop
Gena- Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва
FreeBasic :: Программирование :: Общее
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|