国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法

      文檔序號:6482059閱讀:160來源:國知局
      專利名稱:一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種軟件開發(fā)設(shè)計中控件的感應(yīng)技術(shù),具體是指一種控件感應(yīng) 窗體搖動的實(shí)現(xiàn)方法。
      背景技術(shù)
      目前,觸摸屏作為一種新型的交互顯示設(shè)備,其應(yīng)用范圍越來越廣泛,大 面積觸摸屏設(shè)備被大量的應(yīng)用在電子沙盤和會議討論中。因此在為觸摸屏設(shè)備 開發(fā)應(yīng)用軟件時,體感元素是軟件開發(fā)的重要一環(huán),多樣化的操作方式讓用戶 能夠更深入感受觸摸屏帶來的操作效果,為用戶帶來良好的操作體驗。
      對于觸摸屏設(shè)備來說,在軟件開發(fā)時一般按照普通PC (個人電腦)軟件的
      開發(fā)方式進(jìn)行開發(fā),之后直接移植運(yùn)行在觸摸屏設(shè)備上。如此一來,就會忽略
      一個重要的開發(fā)因素——普通PC與觸摸屏設(shè)備在軟件操作方式上的差異。因此,
      用戶在使用該軟件時缺乏良好的操作體驗,同時也讓用戶覺得使用觸摸屏設(shè)備 并沒有為軟件操作帶來更大的方便。
      對于開發(fā)在觸摸屏設(shè)備上運(yùn)行的軟件的程序員來說,由于在開發(fā)時只使用
      普通PC軟件的開發(fā)平臺,開發(fā)平臺并沒有提供專為開發(fā)觸摸屏設(shè)備軟件而設(shè)的
      體感控件,所以開發(fā)時難以為軟件加入更多的體感操作。

      發(fā)明內(nèi)容
      本發(fā)明的目的在于克服上述現(xiàn)有技術(shù)的缺點(diǎn)和不足,提供一種控件感應(yīng)窗 體搖動的實(shí)現(xiàn)方法,其可以讓二次開發(fā)程序員在開發(fā)觸摸屏設(shè)備專用軟件時方 便地加入該體感操作,為用戶更好的感受觸摸屏帶來的良好操作效果。
      本發(fā)明的目的通過下述技術(shù)方案實(shí)現(xiàn)本控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法, 包括以下步驟
      (1)初始化設(shè)置
      以當(dāng)前窗體位置左上角坐標(biāo)為原點(diǎn)建立一個具有偏角的平面方向坐標(biāo)系, 并為各個象限編號,建立各個象限與編號之間的映射關(guān)系;
      窗體上的控件提供參數(shù)設(shè)定接口讓二次開發(fā)程序員傳入用于設(shè)定判斷窗體搖動操作的敏感度的有關(guān)參數(shù);
      (2) 記錄位置信息 控件的消息處理模塊接收窗體移動的消息,根據(jù)窗體移動后所處位置的左
      上角坐標(biāo),控件的位置計算模塊計算出窗體移動后所處的象限,記錄象限所對 應(yīng)的編號;位置計算模塊以移動后的窗體位置的左上角坐標(biāo)為原點(diǎn),重新建立 具有偏角的平面方向坐標(biāo)系;
      (3) 判斷搖動操作-
      重復(fù)步驟(2),當(dāng)用戶左右或上下?lián)u動窗體時,每次移動后記錄的象限編 號會形成一組序列,控件的序列分析模塊通過分析序列的特征,判斷用戶是否 在搖動窗體以及搖動窗體的方向;若判斷出用戶正在進(jìn)行搖動窗體的操作,則 控件的消息處理模塊把搖動窗體的方向作為參數(shù),發(fā)送搖動操作的消息到窗體, 二次開發(fā)程序員將響應(yīng)該消息,調(diào)用宿主程序的相關(guān)功能;若判斷出用戶沒有 進(jìn)行窗體搖動操作,則復(fù)位控件。
      為更好的實(shí)現(xiàn)本發(fā)明,所述具有偏角的平面方向坐標(biāo)系是指具有45度偏角 的平面方向坐標(biāo)系。
      所述步驟(1)用于設(shè)定判斷窗體搖動操作的敏感度的有關(guān)參數(shù)包括窗體搖 動幅度、搖動次數(shù)下限和單位時間。
      所述步驟(2)記錄位置信息還通過移動距離計數(shù)器和搖動時間計時器實(shí)現(xiàn)

      所述移動距離計數(shù)器用于累加移動距離,每當(dāng)窗體移動距離達(dá)到預(yù)先設(shè)定 的窗體搖動幅度時,移動距離計數(shù)器將會調(diào)用位置計算模塊,位置計算模塊會 根據(jù)前一次記錄下的窗體位置的左上角坐標(biāo)與當(dāng)前窗體位置的左上角坐標(biāo)計算 出窗體向哪個象限移動,并記錄該象限編號,計算完畢后,移動距離計數(shù)器復(fù) 位,位置計算模塊記錄下當(dāng)前窗體位置的左上角坐標(biāo)并將其作為坐標(biāo)原點(diǎn),等 待接收下一次窗體移動消息;
      所述搖動時間計時器用于計算時間,當(dāng)達(dá)到預(yù)先設(shè)定的單位時間時,搖動 時間計時器將會調(diào)用序列分析模塊對記錄下的象限編號序列進(jìn)行分析。
      所述步驟(3)控件的序列分析模塊通過分析序列的特征,判斷用戶是否在 搖動窗體以及搖動窗體的方向,具體是指
      序列分析模塊把相鄰重復(fù)的序列項刪除,之后掃描序列判斷是否反復(fù)不間 斷出現(xiàn)代表左右方向象限的編號或代表上下方向象限的編號組成的序列,若出 現(xiàn)次數(shù)少于設(shè)定的搖動次數(shù)下限,則認(rèn)為用戶沒有進(jìn)行窗體搖動操作,則復(fù)位控件;若出現(xiàn)次數(shù)等于或超過設(shè)定的搖動次數(shù)下限,則認(rèn)為用戶在進(jìn)行窗體搖 動操作;認(rèn)為用戶在進(jìn)行窗體搖動操作時,若序列僅由表示左右方向象限的編 號組成,則判斷用戶正在進(jìn)行左右方向的搖動,若序列僅由表示上下方向象限 的編號組成,則判斷用戶正在進(jìn)行上下方向的搖動。 與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果
      本發(fā)明通過給窗體所在位置建立坐標(biāo)系來確定窗體搖動的方向,可以方便 地為二次開發(fā)程序員在開發(fā)觸摸屏設(shè)備專用軟件時加入該體感操作,從而提供 更好的用戶體驗以及更便捷的操作方式。


      圖1是本發(fā)明實(shí)施例的具有45度偏角的平面方向坐標(biāo)系示意圖; 圖2是本發(fā)明一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法的流程示意圖。
      具體實(shí)施例方式
      下面結(jié)合實(shí)施例及附圖,對本發(fā)明作進(jìn)一步地詳細(xì)說明,但本發(fā)明的實(shí)施 方式不限于此。
      本實(shí)施例的控件由3大模塊組成,分別為消息處理模塊、位置計算模塊、 序列分析模塊;其中消息處理模塊用于檢查初始化設(shè)置和與窗體進(jìn)行通信;位 置計算模塊用于記錄窗體的坐標(biāo)信息、計算窗體的移動方向和記錄窗體移動后 所處的象限編號;序列分析模塊用于分析序列的特征,判斷用戶是否在搖動窗 體以及搖動窗體的方向。
      本實(shí)施例還通過移動距離計數(shù)器和搖動時間計時器實(shí)現(xiàn)的。
      本實(shí)施例的具體過程如下
      如圖1所示,以當(dāng)前窗體位置左上角坐標(biāo)為原點(diǎn)建立一個具有45度偏角的 平面方向坐標(biāo)系,并為各個象限編號,其中左右上下方向的編號依次為1、 3、 2、 4,建立各個象限與編號之間的映射關(guān)系;
      如圖2所示,首先,消息處理模塊初始化時會檢查二次開發(fā)程序員是否已 經(jīng)調(diào)用控件所提供的參數(shù)設(shè)定接口設(shè)置完成判斷窗體搖動操作的敏感度的相關(guān) 參數(shù),參數(shù)包括窗體搖動幅度(單位為像素)、搖動次數(shù)下限(單位為次數(shù))、 單位時間(單位為毫秒)。根據(jù)這3個參數(shù),敏感度可定義為單位時間內(nèi)用戶搖 動窗體移動距離達(dá)到窗體搖動幅度的次數(shù)與搖動次數(shù)下限之差,若該差值大于 等于0且象限編號形成的序列滿足規(guī)律,可認(rèn)為用戶正在對窗體進(jìn)行搖動操作。若相關(guān)參數(shù)未設(shè)定,則發(fā)出設(shè)置失敗消息通知窗體。
      當(dāng)用戶移動窗體時,控件的消息處理模塊將會接收到窗體移動消息。在消 息處理模塊初次接收到窗體移動消息時,位置計算模塊會記錄下當(dāng)前窗體位置 的左上角坐標(biāo)并將其作為坐標(biāo)原點(diǎn),啟動搖動時間計時器以及移動距離計數(shù)器。
      之后,當(dāng)控件的消息處理模塊再次接收到窗體移動消息時,移動距離計數(shù) 器會累加移動距離。每當(dāng)移動距離達(dá)到設(shè)定的窗體搖動幅度時,移動距離計數(shù) 器將會調(diào)用位置計算模塊。位置計算模塊會根據(jù)前一次記錄下的窗體位置的左 上角坐標(biāo)與當(dāng)前窗體位置的左上角坐標(biāo)計算出窗體向哪個象限移動,并記錄該 象限編號。計算完畢后,移動距離計數(shù)器復(fù)位,位置計算模塊記錄下當(dāng)前窗體 位置的左上角坐標(biāo)并將其作為坐標(biāo)原點(diǎn),等待接收下一次窗體移動消息。
      當(dāng)搖動時間計時器達(dá)到設(shè)定的單位時間時,將調(diào)用序列分析模塊對記錄下 的象限編號序列進(jìn)行分析。。
      對象限編號序列進(jìn)行分析的過程具體如下首先把相鄰重復(fù)的序列項刪除,
      之后掃描序列判斷是否反復(fù)不間斷出現(xiàn)只由編號1和3 (131313…。,0或只由編 號2和4 (242424…" )組成的序列,若出現(xiàn)次數(shù)少于設(shè)定的搖動次數(shù)下限(即 差值小于0),則認(rèn)為用戶沒有進(jìn)行窗體搖動操作,則復(fù)位控件;若出現(xiàn)次數(shù)等 于或超過設(shè)定的搖動次數(shù)下限(即差值大于等于0),則認(rèn)為用戶正在進(jìn)行窗體 搖動操作。當(dāng)認(rèn)為用戶在進(jìn)行窗體搖動操作時,若序列僅由編號1和3組成, 則判斷用戶正在進(jìn)行左右方向的搖動,若序列僅由編號2和4組成,則判斷用 戶正在進(jìn)行上下方向的搖動。
      一旦認(rèn)為用戶正在進(jìn)行窗體搖動操作,則消息處理模塊會以搖動方向作參 數(shù)發(fā)出搖動操作的消息通知窗體。窗體收到消息后就會根據(jù)二次開發(fā)程序員的 需要調(diào)用指定程序功能。
      上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受所述實(shí) 施例的限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、 替代、組合、簡化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。
      權(quán)利要求
      1、一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法,其特征在于,包括以下步驟(1)初始化設(shè)置以當(dāng)前窗體位置左上角坐標(biāo)為原點(diǎn)建立一個具有偏角的平面方向坐標(biāo)系,并為各個象限編號,建立各個象限與編號之間的映射關(guān)系;窗體上的控件提供參數(shù)設(shè)定接口讓二次開發(fā)程序員傳入用于設(shè)定判斷窗體搖動操作的敏感度的有關(guān)參數(shù);(2)記錄位置信息控件的消息處理模塊接收窗體移動的消息,根據(jù)窗體移動后所處位置的左上角坐標(biāo),控件的位置計算模塊計算出窗體移動后所處的象限,記錄象限所對應(yīng)的編號;位置計算模塊以移動后的窗體位置的左上角坐標(biāo)為原點(diǎn),重新建立具有偏角的平面方向坐標(biāo)系;(3)判斷搖動操作重復(fù)步驟(2),當(dāng)用戶左右或上下?lián)u動窗體時,每次移動后記錄的象限編號會形成一組序列,控件的序列分析模塊通過分析序列的特征,判斷用戶是否在搖動窗體以及搖動窗體的方向;若判斷出用戶正在進(jìn)行搖動窗體的操作,則控件的消息處理模塊把搖動窗體的方向作為參數(shù),發(fā)送搖動操作的消息到窗體,二次開發(fā)程序員將響應(yīng)該消息,調(diào)用宿主程序的相關(guān)功能;若判斷出用戶沒有進(jìn)行窗體搖動操作,則復(fù)位控件。
      2、 根據(jù)權(quán)利要求1所述一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法,其特征在于 所述具有偏角的平面方向坐標(biāo)系是指具有45度偏角的平面方向坐標(biāo)系。
      3、 根據(jù)權(quán)利要求1或2所述一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法,其特征在 于所述步驟(1)用于設(shè)定判斷窗體搖動操作的敏感度的有關(guān)參數(shù)包括窗體搖 動幅度、搖動次數(shù)下限和單位時間。
      4、 根據(jù)權(quán)利要求3所述的一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法,所述步驟(2) 記錄位置信息還通過移動距離計數(shù)器和搖動時間計時器實(shí)現(xiàn)的所述移動距離計數(shù)器用于累加移動距離,每當(dāng)窗體移動距離達(dá)到預(yù)先設(shè)定 的窗體搖動幅度時,移動距離計數(shù)器將會調(diào)用位置計算模塊,位置計算模塊會 根據(jù)前一次記錄下的窗體位置的左上角坐標(biāo)與當(dāng)前窗體位置的左上角坐標(biāo)計算 出窗體向哪個象限移動,并記錄該象限編號,計算完畢后,移動距離計數(shù)器復(fù) 位,位置計算模塊記錄下當(dāng)前窗體位置的左上角坐標(biāo)并將其作為坐標(biāo)原點(diǎn),等待接收下一次窗體移動消息;所述搖動時間計時器用于計算時間,當(dāng)達(dá)到預(yù)先設(shè)定的單位時間時,搖動 時間計時器將會調(diào)用序列分析模塊對記錄下的象限編號序列進(jìn)行分析。
      5、根據(jù)權(quán)利要求3所述一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法,所述步驟(3) 控件的序列分析模塊通過分析序列的特征,判斷用戶是否在搖動窗體以及搖動 窗體的方向,具體是指序列分析模塊把相鄰重復(fù)的序列項刪除,之后掃描序列判斷是否反復(fù)不間 斷出現(xiàn)代表左右方向象限的編號或代表上下方向象限的編號組成的序列,若出 現(xiàn)次數(shù)少于設(shè)定的搖動次數(shù)下限,則認(rèn)為用戶沒有進(jìn)行窗體搖動操作,則復(fù)位 控件;若出現(xiàn)次數(shù)等于或超過設(shè)定的搖動次數(shù)下限,則認(rèn)為用戶在進(jìn)行窗體搖 動操作;認(rèn)為用戶在進(jìn)行窗體搖動操作時,若序列僅由表示左右方向象限的編 號組成,則判斷用戶正在進(jìn)行左右方向的搖動,若序列僅由表示上下方向象限 的編號組成,則判斷用戶正在進(jìn)行上下方向的搖動。
      全文摘要
      本發(fā)明公開了一種控件感應(yīng)窗體搖動的實(shí)現(xiàn)方法,包括以下步驟(1)以當(dāng)前窗體位置左上角坐標(biāo)為原點(diǎn)建立一個具有偏角的平面方向坐標(biāo)系,并為各個象限編號、設(shè)定有關(guān)參數(shù);(2)控件的消息處理模塊接收窗體移動的消息,位置計算模塊計算出窗體移動后所處的象限,記錄對應(yīng)的編號;位置計算模塊以移動后的窗體位置的左上角坐標(biāo)為原點(diǎn),重新建立坐標(biāo)系;(3)重復(fù)步驟(2),當(dāng)用戶搖動窗體時,每次移動后記錄的象限編號形成一組序列,通過分析序列的特征,判斷用戶是否在搖動窗體;若判斷出用戶正在搖動窗體,則發(fā)送搖動操作的消息到窗體。本發(fā)明方便地為二次開發(fā)程序員在開發(fā)時加入體感操作,從而提供更好的用戶體驗以及更便捷的操作方式。
      文檔編號G06F9/44GK101576821SQ200910039850
      公開日2009年11月11日 申請日期2009年5月27日 優(yōu)先權(quán)日2009年5月27日
      發(fā)明者司徒健聰 申請人:廣東威創(chuàng)視訊科技股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1