|
有很多問(wèn)題。if語(yǔ)句的用法問(wèn)題。if語(yǔ)句每一個(gè)分支都必須是唯一的。你的if語(yǔ)句第一個(gè)i<10000,和第二個(gè)i>50,當(dāng)i=51---9999的時(shí)候,兩個(gè)if分支是同事觸發(fā)的。
然后是按鍵事件問(wèn)題,一般這個(gè)情況都是在按鍵抬起(exKeyValueFlag == 0)時(shí)進(jìn)行事件處理。
修改程序如下:
if(exKeyValueFlag != 0)
{
if(i<10000) {
i++;
}
else{
i=10000;//i達(dá)到最大值時(shí)定住,防止溢出
}
}
else //當(dāng)按鍵抬起時(shí)做判斷
{
if(i > 1500) {
longkeyflag = 1;
}
else{ //這里也可以按照你的意思:if(i>50 && i<200)
shortkeyflag = 1;
}
}
i = 0;//i初始化
}
--------------------------------------
前天發(fā)的好像不見(jiàn)了。再發(fā)以下。
有很多問(wèn)題。if語(yǔ)句的用法問(wèn)題。if語(yǔ)句每一個(gè)分支都必須是唯一的。你的if語(yǔ)句第一個(gè)i<10000,和第二個(gè)i>50,當(dāng)i=51---9999的時(shí)候,兩個(gè)if分支是同事觸發(fā)的。
然后是按鍵事件問(wèn)題,一般這個(gè)情況都是在按鍵抬起(exKeyValueFlag == 0)時(shí)進(jìn)行事件處理。
if(exKeyValueFlag != 0)
{
if(i<10000) {
i++;
}
else{
i=10000;//i達(dá)到最大值時(shí)定住,防止溢出
}
//if(i > 1500) {
// longkeyflag = 1;
// }
}
else //當(dāng)按鍵抬起時(shí)做判斷
{
if(i > 1500) {
longkeyflag = 1;
}
else{ //這里也可以按照你的意思:if(i>50 && i<200)
shortkeyflag = 1;
}
}
i = 0;//i初始化
}
一般這種情況都是按鍵抬起時(shí)再做事件。當(dāng)然,也可以分成兩部分,長(zhǎng)按的放在按鍵按下時(shí)處理,也就是我注釋掉的那三行。
|
評(píng)分
-
查看全部評(píng)分
|