欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 滑動條UI上如何保存最終的數(shù)據? [打印本頁]

作者: coolaiMCU    時間: 2024-2-25 11:05
標題: 滑動條UI上如何保存最終的數(shù)據?

大家好,

我的項目上有一個3.5寸的觸摸屏,觸摸屏上做了一個圖形UI,也就是滑條,如下,




這個滑條主要用來設置一個變量的值,從左往右滑動時,滑條顯示從0到100自增,最大100.
假設這個變量是:
unsigned char speed_val=0;

現(xiàn)在要把最終設定的值保存起來,比如最終滑到50,要把50這個值寫進flash保存,也就是保存最后一個值。
我之前沒用圖形UI時,用的保存方法是,再定義一個變量的副本,
unsigned char speed_val_temp=0;

不停的對比speed_valspeed_val_temp的值,當兩者值不一樣時,說明滑條的值發(fā)生了變化,就把speed_val保存進flash,大概這樣,

if(speed_val != speed_val_temp)
{
     speed_val_temp=speed_val;
     write_data_to_flash(speed_val_temp);
}

由于之前用戶操作不頻繁,所以用這種方法。
現(xiàn)在用了滑條,假設需要保存50這個值,用戶從0滑到50,中間經歷了49個值,這49個值都會被寫進flash,導致寫flash太頻繁,而這中間的49個值也并不是我需要的,我只需要保存50這個值。但現(xiàn)在滑條的問題是,我不知道用戶什么時候停止滑動,用戶最終滑到什么值。

有人說可以在UI上加一個保存按鈕,滑到最終值,點一下保存。這個確實不錯,但是為了UI的好看和簡潔性,最終沒有加,而且我看好多別人的滑條上面也沒有保存按鈕啊,他們是怎么實現(xiàn)保存數(shù)據的?

希望大神能賜教一些思路,謝謝!



作者: a185980800    時間: 2024-2-25 12:49
串口屏發(fā)變化數(shù)值給你的時候就開始計時比如串口屏發(fā)給你的數(shù)據隔個兩三秒了還沒有變證明用戶沒有調整了把它保存一下,
作者: xiaobendan001    時間: 2024-2-25 13:13
我是不太懂這個,不過這個不是用手指操作的?那么手指離開屏幕時保存可以不?
作者: hisun    時間: 2024-2-25 16:08
滑動條失去焦點時保存數(shù)據?
作者: lhtlhtl    時間: 2024-2-25 16:20
我的愚見,應該可以使用時間計數(shù),大于某個值才保存,不知是否正確!
作者: wulin    時間: 2024-2-25 20:42
保存所謂滑條的原理與按鍵一樣,用計時器。一旦操作滑條就不停賦值計時變量預定初值并倒計時,停止操作滑條后等倒計時為0保存當前滑條數(shù)據。
作者: Y_G_G    時間: 2024-2-26 12:46
1,犧牲一定的響應速度來提高效率,可以設定一個滑動停止時間,停止滑動一段時間后再輸出滑塊的值,而不是實時輸出,這樣的話,你從0滑動到70的時候,可能是只輸出一個值:70,如果是實時輸出的話,那就是從0-70一共要輸出71個數(shù)據了
2,保存的位置可以先保存到單片機的內存上,關機再寫入FLASH,下次開機再從FLASH讀取出來就可以了
作者: chxelc    時間: 2024-2-27 10:40
滑動條有沒有事件驅動?如果有,在值變化的事件中保存就可以了。如果沒有,用定時器,延時一段時間再讀取滑動條的值后保存。
作者: c8t6    時間: 2024-2-27 11:09
其實你也可以,不急著保存。你可以先把你滑動條的值先臨時存放。當你在操作其他的功能是就可以把前面操作的值再進行flash保存。比如你要退出這個界面,或者進入其他界面是就可以將滑動條的值保存起來

作者: man1234567    時間: 2024-2-27 11:43
俺也不明白滑動條上方的數(shù)字是不是自己蹦出來的
就像數(shù)錢記帳,有的人是數(shù)完記賬,也有的人是數(shù)一張記一次帳,僅此而已。
作者: aidianzi    時間: 2024-2-28 16:21
要是用的串口屏的話里面有數(shù)據讀取功能你可以讀取滑動條的值,存儲數(shù)據建議間隔一段時間比較存儲一次,不要頻率太高否則數(shù)據變化時存儲頻率太高占用時間多也影響FLASH壽命,存儲數(shù)據建議也建議增加一下CRC之類的校驗
作者: coolaiMCU    時間: 2024-3-23 09:58
c8t6 發(fā)表于 2024-2-27 11:09
其實你也可以,不急著保存。你可以先把你滑動條的值先臨時存放。當你在操作其他的功能是就可以把前面操作的 ...

你的這種思路我也想到過,但是會有一個問題就是,如果用戶滑到一個值后馬上關機,這個數(shù)據就丟失了!如果不發(fā)生馬上關機這種意外事件,你這種思路是不錯的
作者: coolaiMCU    時間: 2024-3-23 10:01
chxelc 發(fā)表于 2024-2-27 10:40
滑動條有沒有事件驅動?如果有,在值變化的事件中保存就可以了。如果沒有,用定時器,延時一段時間再讀取滑 ...

有事件驅動,不過在值變化的事件中保存,是不是和我上面講的一樣了,就是從0滑到50,這中間經歷的49個值都會被保存?而我只需要50這個值而已。

我在想是不是用釋放這個事件比較好一些,結合上面兄弟的一些建議,在手指釋放的時候保存應該會好一些,我的滑動條是有釋放這個事件的。




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1