發表文章

目前顯示的是有「Multi-Touch」標籤的文章

Silverlight 4 ListBox Gesture 手勢捲動功能

圖片
由於最近我們公司,配合下半年度平板電腦的火熱上市,整個將透過Silverlight開發的產品或功能都一律加上Gesture的支援。這讓Silverlight所開發出來的App,跑在目前坊間的Win7平板上所呈現出的效果比起iPad或Android上的App一點都不遜色且有過之而無不及。 然而Silverlight 4不像WP7那麼好命,每一個ListBox或具有卷軸的控制項(例如ScrollViewer)都內建支援Gesture的功能,因此即便跑在平板電腦上,ListBox都需要用卷軸拖曳的方式來捲動,但明明Silverlight就支援Gesture,不能用手勢捲動ListItem似乎有些遜色。 因此我在網路上找到了這組好用的Behavoir... http://lighttouch.codeplex.com/ 下載之後,在你的專案中引用底下幾個.dll即可。 Wintellect.Touch.dll System.Windows.Interactivity.dll System.Windows.Input.Manipulations.dll 如果你想要將ListBox加上Gesture功能,只需要把ListBoxTouchScrollBehavior拖曳到ListBox上: 接著,幫ListBox設計一個ItemPanel,例如(關鍵在GestureListener),完成後大致如下: 最後,幫ListBox的設計一個包含GestureListener Behavior的ItemTemplate即可: 你可以從底下這邊看到預覽的效果: blog.studyhost.com/BlogData/20110611/SilverlightApplication9TestPage.html   你會發現,如果你有支援Multi-Touch的顯示器或是Win7平板電腦,整個手勢拖曳的動作非常順暢,即便你沒有多點觸控設備,這個.dll也支援用滑鼠模擬Gesture,算是挺不錯的設計。 完整的範例程式碼可參考 這裡 。 分享

Multi-touch? Gesture? how about this???

會不會每天接觸電腦,透過開發工具撰寫程式的我們,反而讓電腦世界制約(抑制扼殺)了我們的想像力? 或許,這一切真的有不同的可能性?

Silverlight Multi-Touch研討會

感謝許多朋友們參加了昨天12/17的 MSDN研討會 , 在這個場次中我大致上介紹了Silverlight開發Multi-Touch Application的概念與一些技巧,研討會中的投影片和要提供給各位的Component我會在整理完成後放到blog上,預計周末前可完成。 很感謝大家天氣那麼冷還到場參加,會中看到了很多先前的老朋友以及之前沒見過面的朋友們,很謝謝各位的支持。 BTW, 先前在Blog上沒有提醒大家是因為報名已經滿了,我也收到許多中南部的朋友們的建議,我會跟微軟反映,盡可能爭取到能夠到中南部舉辦的機會。謝謝大家的支持。

Silverlight Multi-Touch程式範例與說明

在這個月(2009/11)的Run!PC當中,我介紹了如何利用Silverlight開發Multi-Touch應用程式,包含如何同時拖曳多Element、利用Multi-Touch技術針對Element進行放大縮小,或是利用Multi-Touch配合Ink達成繪圖或手寫輸入的功能,有興趣的讀者可以參考。

[轉貼]多點觸控程式設計競賽 (及 如何用滑鼠模擬多點觸控)

隨著微軟最新作業系統 Windows 7 終於進入上市最後倒數階段,微軟與.DotBlog舉辦「Windows 7 多點觸控程式設計大賽」,個人參賽者組得獎作品可奪得多點觸控筆記型電腦。 活動網址「Windows 7 多點觸控程式設計大賽」 http://w7contest.dotblogs.com.tw/competition.aspx 開發者可以從 http://msdn.microsoft.com/zh-tw/windows/default.aspx 取得相關的技術文件。 不過比較讓我感興趣的是,其中有介紹如何透過模擬方式在Vista上透過滑鼠模擬多點觸控,挺有趣的,相信有不少人需要,提供大家參考。

Silverlight 3 中的multi-Touch程式開發

圖片
TechDays 2009忙完了,終於有一點點時間可以回頭寫SL3中的多點觸控,隨著Windows 7的Launch在即,我開始屢屢被問到Silverlight 3中的多點觸控程式開發的部分。 在TechDays 2009中也稍微提過,其實SL3中的多點觸控一點也不複雜,架構上相當簡單,底下這是SL3中多點觸控的訊息架構: 從這邊您也不難發現,觸控螢幕(或面板或NB)、Windows 7、IE8當然都是必要設備,缺一不可。 對於SL3應用程式來說,只是很簡單的從IE8接受多點觸控事件,或者是模擬成滑鼠事件。至於很多人關心的可以接收到幾點,端看設備而定,如果設備傳入的是兩點(我手上的觸控螢幕和NB都只支援兩點),傳入SL3的就是兩點;若設備支援多點,SL3就接收到多點,如此而已,沒啥特別的。 要在SL3當中接收到多點觸控的信息,再簡單也不過,最簡單的方式如下,動作只有兩動: 1.Hook Multi-Touch事件 2.在事件中取得點,進行處理或運算。 程式碼如下: public partial class MainPage : UserControl { public MainPage() { InitializeComponent(); //Hook事件 Touch.FrameReported += new TouchFrameEventHandler(Touch_FrameReported); } void Touch_FrameReported(object sender, TouchFrameEventArgs e) { //取得點數 int n = e.GetTouchPoints(this.LayoutRoot).Count; this.textBlock1.Text = "points : " + n; //將每一點座標顯示出來 foreach (System.Windows.Input.TouchPoint p in e.GetTouchPoints...

傳說中的Silverlight 3多點觸控(Multi-Touch)應用

圖片
SL3推出已久,傳說中,SL3支援Windows 7的Multi-Touch功能,為何是『傳說中』呢? 因為一直以來苦無Touch Screen設備可以讓我測試,害我在present Silverlight Application時,總是有那麼點小小的遺憾,這個心頭的遺憾始終揮之不去...(不是我不去買,是市面上還買不到通過W7認證的螢幕,不過大家別擔心,馬上你就會看到支援W7的Touch設備將如雨後春筍般的出現啦) 可能是微軟聽到了我在連續四場研討會的小小抱怨(...ㄟ...是懇求),終於肯弄台Touch Screen借我來玩玩,難得微軟這麼大發善心,此時不借更待何時,儘管當天要從遙遠的客戶處繞到微軟總部,但還是專程去了一趟... 周五,Touch Screen終於到手,回家第一件事情就是把塵封已久的Windows 7打開(是的,其實我W7早就灌好了很久,但是沒有Touch Screen始終讓我意興闌珊),把螢幕給接上去...怪怪,怎麼沒反應咧??? 東弄西弄,開始有畫面了(似乎觸控也work),只是怎麼解析度怪怪的,依照Anne跟我說的,只需要把螢幕接頭接上,插上USB就搞定啦??? 研究了半天,原來根本不是Touch Screen的錯,Touch Screen還真的是接上去就可以用,原來是我剛灌好的Dell NB的W7顯卡驅動程式還沒安裝,導致無法輸出正確的訊號到Touch Screen,立刻到nVIDIA網站,下載,安裝,搞定。 嘿嘿嘿,接下來花了約莫1.5個小時,第一個Silverlight Multi-Touch應用程式完成!!! 底下是我寫好的第一個SL3 Multi-Touch應用程式範例,嘿,這應該是現階段少數可以用Multi-Touch控制的網站喔(有Windows 7+IE8+Touch Screen的朋友可以連上去測試一下Multi-Touch在Browser上執行的狀況): http://blog.studyhost.com/BlogData/20090921/MultiTouchTestTestPage.html PS.檔案很大是因為我用了一個MediaPlayer的控件,跟Multi-Touch無關... 但我想目前能測試的網友肯定不多,因為大家都還沒有Touch Screen,所以我拿攝影機錄製了一段Video,有興趣的朋友可以看看這...