首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Allegro5中启用鼠标

在Allegro5中启用鼠标
EN

Stack Overflow用户
提问于 2018-11-29 04:18:05
回答 1查看 43关注 0票数 1

我开始在我的C程序中使用Allegro,但我在创建按钮时遇到了困难。我使用的是这样的逻辑:

代码语言:javascript
复制
if (event.type == ALLEGRO_EVENT_MOUSE_BUTTON_UP)
{
      if ((event.mouse.x >= 442) &&(event.mouse.x <= 471) &&(event.mouse.y >= 202) &&(event.mouse.y <= 238))
            {
                dig = '1';
                entr = 1;
            }

但是这个由轴定义的空格是不可点击的。这里有人有一些关于我应该使用的命令拼写错误的提示吗?

EN

回答 1

Stack Overflow用户

发布于 2019-03-22 22:24:00

我只能猜测哪里出了问题,但还没有答案,所以我将提供一些关于可能的问题的提示。你的线程标题是在allegro 5中启用鼠标,所以我只能假设你没有得到鼠标输入。

1)您需要安装鼠标驱动程序,然后才能获得任何鼠标输入:

if (!al_install_mouse()) {Fail();}

2)鼠标需要注册到您的事件队列中。

al_register_event_source(event_queue , al_get_mouse_event_source());

在典型的GUI中,大多数按钮只有在其单击区域同时接收到鼠标按键按下事件和鼠标按键释放事件时才被视为“按下”。这样,当你点击其他东西时,你就不会按下按钮,而是将鼠标移到你的按钮上并松开它。您还可以防止按钮事件按下鼠标、将鼠标移出单击区域并释放鼠标。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53527454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档