新四季網

一種windows系統下實現軟體界面滑動特效的方法

2023-07-20 16:08:46

專利名稱:一種windows系統下實現軟體界面滑動特效的方法
技術領域:
本發明涉及一種windows系統下實現軟體界面滑動特效的方法。
背景技術:
計算機用戶界面是指計算機與其使用者之間的對話接口,是計算機系統的重要組成部分。計算機的發展史不僅是計算機本身處理速度和存儲容量飛速提高的歷史,而且是計算用戶界面不斷改進的歷史。當今的軟體界面豐富多彩,這些界面的最大的特點是提供了更加友好的界面以區別於普通的對話框應用程式。目前在WINDOWS系統中,當窗體滑動 的時候,會因為WINDOWS的窗體重繪機制而產生一定的拖影或者閃爍
發明內容

本發明為了克服上述現有技術的不足而提供一種當主窗體向子窗體切換時不容易出現拖影或閃爍,且視覺效果更為流暢的windows系統下實現軟體界面滑動特效的方法。一種windows系統下實現軟體界面滑動特效的方法,具體包括以下步驟
步驟I、將要實現滑動效果的窗體稱為子窗體,將子窗體位於的要滑動出來起始點稱為初始位置,設置該子窗體為不可見,將該子窗體的shown變量設為false ;
步驟2、開始滑動時先打開定時器,該定時器的周期是子窗體從初始位置移動到目標位置所需要的時間;
步驟3、開始子窗體的滑動特效時,設置子窗體為可見,將該子窗體的shown變量設為true ;
步驟4、在上述定時周期內,間隔幾十毫秒到幾百毫秒執行一次子窗體在主窗體中的位移,該子窗體向左移動X個像素,在改變子窗體位置之前用Win32 API鎖定整個子窗體;步驟5、子窗口完成一次位移後立即判斷該子窗體的位置是否已經在目標位置,讀取子窗體的左邊緣相對於主窗體的左邊緣的距離值left,判斷是否與閾值相符,若相符則表示子窗體已達到目標位置,表示該子窗體已經滑動完畢,跳到步驟8,否則繼續步驟6 ;
步驟6、將閾值減去位移像素值X,以便在步驟5中進行判斷;
步驟7、返回步驟4 ;
步驟8、解鎖子窗體,完成滑動特效,定時器停止;
步驟9、對整個子窗體進行一次主動調用API的重繪。本發明利用API對子窗體進行鎖定和解鎖,在完成整個子窗體的滑動特效後再手動調用API進行重繪,解決了在WINDOWS系統中,當窗體滑動的時候,因為WINDOWS的窗體重繪機制而產生一定的拖影或者閃爍的問題。


圖I為本發明的工作原理圖;圖2為本發明的工作流程圖。以下結合附圖和具體實施例對本發明作進一步詳述。
具體實施例如圖1、2所示,本發明一種windows系統下實現軟體界面滑動特效的方法,具體包括以下步驟
步驟I、將要實現滑動效果的窗體稱為子窗體,將子窗體位於的要滑動出來起始點稱為初始位置,設該子窗體的shown變量為false,表示該子窗體還未正常顯示,並設置該子窗體為不可見(invisible); 步驟2、開始滑動時先打開定時器,該定時器的周期是子窗體從初始位置移動到目標位置所需要的時間;
步驟3、開始子窗體的滑動特效時,將子窗體設為可見(visible),且將該子窗體的shown變量設為true ;
步驟4、在上述定時周期內,間隔幾十毫秒到幾百毫秒執行一次子窗體在主窗體中的位移,該子窗體向左移動X個像素(具體值依據情況而定),以肉眼看不出滑動為宜,在改變子窗體位置之前用Win32 API鎖定整個子窗體,以保證在子窗體在位移過程中不因為windows的重繪機制照成拖影;
步驟5、子窗口完成一次位移後立即判斷該子窗體的位置是否已經在目標位置,讀取子窗體的左邊緣相對於主窗體的左邊緣的距離值left,判斷是否與閾值相符,若相符則表示子窗體已達到目標位置,表示該子窗體已經滑動完畢,跳到步驟8,否則繼續步驟6 ;
步驟6、將閾值減去位移像素值X,以便在步驟5中進行判斷;
步驟7、返回步驟4 ;
步驟8、解鎖子窗體,完成滑動特效,定時器停止;
步驟9、對整個子窗體進行一次主動調用API的重繪,以便再次保證不產生重繪拖影。以上所述,僅是本發明較佳實施例而已,並非對本發明的技術範圍作任何限制,故凡是依據本發明的技術實質對以上實施例所作的任何細微修改、等同變化與修飾,均仍屬於本發明技術方案的範圍內。
權利要求
1.一種windows系統下實現軟體界面滑動特效的方法,其特徵在於具體包括以下步驟 步驟I、將要實現滑動效果的窗體稱為子窗體,將子窗體位於的要滑動出來起始點稱為初始位置,設置該子窗體為不可見,將該子窗體的shown變量設為false ; 步驟2、開始滑動時先打開定時器,該定時器的周期是子窗體從初始位置移動到目標位置所需要的時間; 步驟3、開始子窗體的滑動特效時,設置子窗體為可見,將該子窗體的shown變量設為true ; 步驟4、在上述定時周期內,間隔幾十毫秒到幾百毫秒執行一次子窗體在主窗體中的位移,該子窗體向左移動X個像素,在改變子窗體位置之前用Win32 API鎖定整個子窗體;步驟5、子窗口完成一次位移後立即判斷該子窗體的位置是否已經在目標位置,讀取子窗體的左邊緣相對於主窗體的左邊緣的距離值left,判斷是否與閾值相符,若相符則表示子窗體已達到目標位置,表示該子窗體已經滑動完畢,跳到步驟8,否則繼續步驟6 ; 步驟6、將閾值減去位移像素值X,以便在步驟5中進行判斷; 步驟7、返回步驟4 ; 步驟8、解鎖子窗體,完成滑動特效,定時器停止; 步驟10、對整個子窗體進行一次主動調用API的重繪。
全文摘要
本發明一種windows系統下實現軟體界面滑動特效的方法,利用API對子窗體進行鎖定和解鎖,在完成整個子窗體的滑動特效後再手動調用API進行重繪,解決了在WINDOWS系統中,當窗體滑動的時候,因為WINDOWS的窗體重繪機制而產生一定的拖影或者閃爍的問題。
文檔編號G06F9/44GK102799441SQ20121025733
公開日2012年11月28日 申請日期2012年7月24日 優先權日2012年7月24日
發明者顏傑 申請人:廈門市凌拓通信科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀