Qt界面指示灯

flyingucla_654321 2012-07-10 08:44:04
在micro2440按键测试程序中,按下某个键界面中指示灯变亮。我现在自己做了一个界面,界面中有四个指示灯,想实现的功能就是按下某个键,界面中的某个指示灯改变颜色,按键驱动已经做好了,可不可以在开发板原有的按键测试程序的基础上稍做修改,实现这个功能,下面是按键的测试程序:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <sys/select.h>
#include <sys/time.h>
#include <errno.h>
int main(void)
{
int buttons_fd;
char buttons[6] = {'0', '0', '0', '0', '0', '0'};
buttons_fd = open("/dev/buttons", 0);
if (buttons_fd < 0) {
perror("open device buttons");
exit(1);
}
for (;;) {
char current_buttons[6];
int count_of_changed_key;
int i;
if (read(buttons_fd, current_buttons, sizeof current_buttons) != sizeof current_buttons)
{
perror("read buttons:");
exit(1);
}
for (i = 0, count_of_changed_key = 0; i < sizeof buttons / sizeof buttons[0]; i++)
{
if (buttons != current_buttons)
{
buttons = current_buttons;
printf("%skey %d is %s", count_of_changed_key? ", ": "", i+1, buttons ==
'0' ? "up" : "down");
QPalette pal = pushButton->palette();
pal.setColor(QColorGroup::ButtonText,QColor(255,0,0));
pushButton->setPalette(pal);

count_of_changed_key++;
}
}
if (count_of_changed_key) {
printf("\n");
}
}
close(buttons_fd);
return 0;
}

...全文
1367 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
测试代码是纯c编写的 Qt代码里可以直接使用,界面上按个button 写个槽函数里面调用到这个测试程序里亮灯灭灯的程序
smile_goat 2012-11-05
  • 打赏
  • 举报
回复
解决了吗????我也想写个相似的程序
开发者说 2012-07-10
  • 打赏
  • 举报
回复
上边的代码实现了你所要的功能了

16,215

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧