FreeBasic
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.

мыш и консоль

Участников: 4

Перейти вниз

мыш и консоль Empty мыш и консоль

Сообщение  Eric-S Вс Окт 26, 2008 10:34 pm

Работает ли мыш в консольном окне
screen 0
У меня не получаеться через getmouse.

Написал игрушку. В графическое окно меня не катит делать, а текстовое вполне подходит.
Только вот рулить можно с клавишь...
А хочу и мышу запрячь.

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 40
Откуда : Россия, Санкт-Петербург

http://eric50.narod.ru

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Andrew Пн Окт 27, 2008 11:12 pm

Попробуй всеми возможными способами. Например через dpmi. Есть даже пример лежащий в Examples>DOS>mouse.bas, и еще где-то один пример для мышки был, но сейчас уже не вспомню. По-моему через GetMouse он и как раз работал в консольном окне.

Andrew

Сообщения : 45
Дата регистрации : 2008-09-23
Возраст : 35
Откуда : Киев

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Eric-S Вт Окт 28, 2008 7:39 pm

Уф! Вопрос снимается.
Это я сам криворукий.
Немного передлав пример он у меня заработал как нужно.

Теперь бы ещё разобраться, на какую строку и символ указывает курсор. Это происходит не очень понятно.
А если у меня элемент ещё и по окну прыгает, так вообще кошмар.

Ну, чтож буду тестировать.

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 40
Откуда : Россия, Санкт-Петербург

http://eric50.narod.ru

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Eric-S Вт Окт 28, 2008 7:58 pm

Хм. Тут ещё проблема.
У меня всё крутиться в цикле. Причём там ещё
sleep 50
Стоит.
В принципе я могу его уменьшить до
sleep 1
А ещё меньше, комп будет грузить шибко сильно. Причём бесполезной нагрузкой.

Но вот мыша со слипом понимает кнопки только если их нажать и держать. А клики до неё не доходят.
Нет ли какого-нибудь буфера?

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 40
Откуда : Россия, Санкт-Петербург

http://eric50.narod.ru

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Gena Ср Ноя 12, 2008 1:53 pm

Примени такой приём:
1.Когда нажимается кнопка мыши, переменная(какая-нибуть) станет равна 1, также "запомни" положение мыши на экране.
2. Когда мышь отпускается, сделай проверку этой переменной и расстояние до предыдущего положения мыши. Если расстояние меньше определённого значения, то активируй кнопку.

(извини неправильно тебя понял)
Мой вопрос:
Как изменять вид курсора?

Gena

Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  tux Ср Ноя 12, 2008 3:03 pm

а зачем его менять, я так понимаю надо сделать в графическом режиме свой курсорчик, предложение у мня такое (обычно так и делают).
Есть Апи функция у винды (точно ее непомню, гугл те в помощь), которая отключает вообще курсор, после чего сделать спрайт курсора какой угодно и перемещать его по экрану в зависимости от координат мыши
tux
tux

Сообщения : 365
Дата регистрации : 2008-04-06
Возраст : 36
Откуда : Сибирь

http://tux.nsk.ru/

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Eric-S Ср Ноя 12, 2008 3:30 pm

Всё бы хорошо, да я просто не успеваю засеч сам клик.
Если кнопку мыши нажать и немного подержать, то всё нормально.
А кратковременный клик, прога не замечает. Если конечно не убирать sleep, но он мне нужен. Да и других вычислений там хватает.

Eric-S

Сообщения : 738
Дата регистрации : 2008-08-06
Возраст : 40
Откуда : Россия, Санкт-Петербург

http://eric50.narod.ru

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Gena Ср Ноя 12, 2008 4:54 pm

предложение у мня такое
Да. Я такое уж делал, но возникает такая фигня - если уж рисовать спрайт, то надо запоминать в массив фон, а если он изменился?, тем мне и нравится стандартный курсор, тем что не портит картинки и заморачиваться не нужно. Может есть какая-то ф-ия с подгрузкой картинки мыши непосредственно в систему?

Gena

Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  tux Ср Ноя 12, 2008 5:20 pm

да есть наверно, все через те же апишки, но на счет фона со спрайтом, то можно использовать маску, есть встроенные средства в FB, тока пардон непомню как точно, но я это делал
tux
tux

Сообщения : 365
Дата регистрации : 2008-04-06
Возраст : 36
Откуда : Сибирь

http://tux.nsk.ru/

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Gena Ср Ноя 12, 2008 5:55 pm

Да-да, можно ещё запомнить в массив AS DOUBLE, пнятно, я о другом - фон может меняться (анимация идёт за курсором), а когда мышара смещается появляется старая картинка.
(напомню про маску - там надо использовать 2 массива, один на белом фоне, другой на чёрном+ PUT ы с AND и OR)
Теперь бы ещё разобраться, на какую строку и символ указывает курсор.
Это легко -
xp=INT(xMouse / Cool
yp=INT(xMouse / Cool
(это в скрине 13 - там шрифт 8хCool

Gena

Сообщения : 182
Дата регистрации : 2008-11-05
Возраст : 30
Откуда : Москва

Вернуться к началу Перейти вниз

мыш и консоль Empty Re: мыш и консоль

Сообщение  Gena Пн Ноя 17, 2008 8:39 pm

Вот что нарыл в интернете - наверно подойдёт:
Код:
#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
Откуда : Москва

Вернуться к началу Перейти вниз

Вернуться к началу


 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения