QLcd编号奇怪的行为
QLcdNumber strange behavior
好吧,QLcdNumber 的值是使用 display() 属性设置的。第一次处理QLcdNumber显示出奇怪的行为。请考虑以下示例:
void MainWindow::dataFromUdp(QByteArray pack)
{
if(pack.at(0) == '!')
{
unsigned long x;
x = (unsigned char)pack[pack.length() -1] +
(unsigned char)pack[pack.length() -2] * 256 +
(unsigned char)pack[pack.length() -3] * 256 * 256 +
(unsigned char)pack[pack.length() -4] * 256 * 256 * 256;
//extract packet
if(x == crcCalculate(0, pack.length() - 4, pack))
{
//CRC is correct
if(pack[1] == 0x0d)
{
number = 0; // class member variable
char value[6];
sprintf(value,"%c%c%c%c%c", (char)pack[2],(char)pack[3],(char)pack[4],
(char)pack[5],(char)pack[6]);
//Now value = 00125
number = atoi(value)/1000.0;
//Now value is 0.125
ui->lcd_range->display(number);
qDebug() << number;
//Here qDebug() and qlcd both show -3.6xx
你有什么想法吗?
服务器也错误地向我发送了第二个数据包。因此,第二个数据包覆盖了LCD,而眼睛却没有注意到它!很抱歉占用你的时间。
干杯。
相关文章:
- 如何在数组中找到最小编号的索引号?
- 贪婪算法编号列表
- 为什么在尝试测量函数返回所需的时间时,我的运行时编号是错误的?
- 为什么在为其分配编号后无法显示我的字符串值?
- 输出返回编号。等于输入字符串的单词的字符串数
- C++ gRPC 线程编号配置
- 检查特定txt文件中的项目是否符合"名称编号USACO"中的约束
- 使用to_string、reverse、stoi组合的C++反转编号给出运行时错误实例超出范围
- 使用 llvm 和本地值编号算法擦除冗余表达式
- "1L << count"是什么意思?如何使用超出"unsigned long long int? "范围的语句编号打印?
- C++ 访问编号变量
- 测试 ISBN 编号以查看其是否有效
- 为什么通过带有文字编号的引用调用会出现"无匹配函数"错误?
- 如何从保存的几何体中获取屏幕编号?
- Libev,为什么在 EVloop 中接收事件的编号是 3?
- 从字母数字 QString 中提取编号
- 递归编号增加
- 连接到套接字失败 - 错误编号 88 (CPP)
- 如何使刻度线指向图中的负方向,而不更改轴的编号和标题的位置
- QLcd编号奇怪的行为