工业触屏系统开发经验分享
最近搞了個工業(yè)觸屏電腦系統(tǒng)的開發(fā),系統(tǒng)安裝的是精簡的WINXP系統(tǒng)。考慮到系統(tǒng)是精簡的,如果直接使用WinForm技術(shù)可能有些功能使用不了,WPF就更不用說了。而且傳統(tǒng)的C/S開發(fā)的部署、修改都是個問題,因此在B/S開發(fā)能夠勝任的情況下,優(yōu)先考慮B/S架構(gòu)。
該系統(tǒng)技術(shù)上面比較簡單,都是使用常規(guī)的技術(shù)進行開發(fā)。
下面羅列一下使用到的技術(shù):
1、JavaScript(jQuery)
這個不用多說了,JavaScript編程是面向瀏覽器客戶端的編程技術(shù),瀏覽器與用戶的交互操作都是通過JavaScript實現(xiàn)的。與數(shù)據(jù)庫操作的部分,都使用了JQuery Ajax技術(shù),實現(xiàn)無刷新操作。
2、JQuery Easy UI
使用了JQuery Easy UI的datagrid組件來實現(xiàn)列表的展示。以后系統(tǒng)升級會考慮使用bootstrap來實現(xiàn)。
3、MSChart
由于更加熟悉微軟服務(wù)器端編程技術(shù),統(tǒng)計圖表部分我優(yōu)先考慮使用了微軟的MSChart組件。其實完全可以考慮使用更加豐富的客戶端統(tǒng)計插件,比如ECharts(百度)、ExtJS等。
4、GDI+
由于該系統(tǒng)需要通過直觀的圖形看出虛擬物品與實物對應(yīng)的關(guān)系,通過GDI+繪圖技術(shù)就可以實現(xiàn)這個效果(這也是我們這個系統(tǒng)的最大特色之一)
5、其它JQuery 插件
?
其它一些小技巧:
1、瀏覽器全屏及無痕模式
我使用的是Chrome瀏覽器,它使用了WebKit內(nèi)核,運行速度更快。
然后在Chrome瀏覽器的快捷方式的目標里面,添加如下設(shè)置:
--incognito -kiosk http://www.baidu.com
將這個快捷方式拖到系統(tǒng)啟動項里面,就可以實現(xiàn)開機自動全屏顯示。
2、條形碼登錄系統(tǒng)
由于是觸摸屏,沒有輸入鍵盤的操作,因此我們登錄系統(tǒng)使用了條形碼進行登錄。
$(function () { $("#<% =LoginId.ClientID%>").bind("input propertychange change", function () { var value = $(this).val(); if (value.length == 10) { $.post("Service/LoginHandler.ashx", { loginId: value }, function (data, status) { if (data == "success") { $.cookie("userid", value); window.location.href = "Main.aspx?userid=" + value; } else { $("#<%=LoginId.ClientID %>").focus().val(""); } }); } }); });光標默認在LoginId的文本框中,一旦使用條形碼閱讀器掃描條形碼就可以將識別出的條形碼內(nèi)容輸出到LoginId的文本框中,自動觸發(fā)propertychange事件,實現(xiàn)自動登錄。
此外,可以使用如下方法判斷光標是否始終在LoginId這個文本框中。
var id = $("#<%=LoginId.ClientID %>"); if (id != document.activeElement.id) { $(id).focus(); }可以設(shè)置每隔2秒檢測一次:
setInterval("fresh()", 2000);//fresh函數(shù)為如上代碼的封裝總結(jié)
以上是生活随笔為你收集整理的工业触屏系统开发经验分享的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDU5706 GirlCat
- 下一篇: WebDriver原理分析