本發(fā)明涉及視圖切換技術(shù)領(lǐng)域,具體地說,是一種基于光標(biāo)定位的快速切換視圖的方法及裝置。
背景技術(shù):
隨著計算機的普及,Word等編輯工具作為一種必備的計算機辦公軟件,得到了廣泛的使用。其中,用戶在編輯、閱讀文檔時,常常需要查看一下前后文;也常常需要反復(fù)對比、編輯兩處不同位置的文段;還常常需要以某文段為參照,反復(fù)的在全文找到其他文段來與參照文段進行比對。
目前的常用方法:運用Word等編輯工具自帶滾動條進行大范圍頁面切換,同時使用鼠標(biāo)滾輪進行小范圍文段切換。然而,這種方法存在難以克服的缺點:當(dāng)用戶將視圖切換至目標(biāo)文段做出操作后,不能快速的返回原位置;當(dāng)用戶需要反復(fù)對比、編輯兩處不同位置的文段時,常用方法效率很低。
技術(shù)實現(xiàn)要素:
為了解決常用方法效率低、不方便的缺點,本發(fā)明使用了一種基于光標(biāo)定位的快速切換視圖的方法及裝置,能夠讓用戶在切換、對比查看文段時,極為快速、方便。
本發(fā)明采用的技術(shù)方案為:
1、在Word等編輯工具中建立3個模塊,這3個模塊結(jié)合成一個功能組。同時,分別命名為:“標(biāo)記模塊”、“切換模塊”和“說明模塊”。
2、標(biāo)記模塊:讀取當(dāng)前光標(biāo)處的位置及其附近文字,并將其數(shù)據(jù)存入公共變量A。
3、切換模塊:
這個模塊有4種完成方法,它們各有優(yōu)勢。
<1>切換模塊分成轉(zhuǎn)至和返回兩個小模塊,
轉(zhuǎn)至模塊:
(1)、讀取當(dāng)前光標(biāo)處的位置及其附近文字,并將其數(shù)據(jù)存入公共變量B(運行“轉(zhuǎn)至”功能前的光標(biāo)位置,即為返回位置);
(2)、根據(jù)公共變量A,切換視圖至標(biāo)記位置。
返回模塊:根據(jù)公共變量B,切換視圖至返回位置。
<2>切換模塊由轉(zhuǎn)回模塊完成,獲取當(dāng)前光標(biāo)的一個參數(shù)值20,根據(jù)這個參數(shù)值(這個參數(shù)值可以是頁數(shù)、段數(shù)等,在實施例和附圖中此參數(shù)值都是頁數(shù))與標(biāo)記位置、返回位置的相應(yīng)參數(shù)值比對結(jié)果,得出當(dāng)前光標(biāo)是否在標(biāo)記位置或返回位置的附近處,并做出相應(yīng)的操作:
(1)若光標(biāo)在標(biāo)記位置附近23,則切換視圖至返回位置24;
(2)若光標(biāo)在返回位置附近21,則切換視圖回標(biāo)記位置22;
(3)若光標(biāo)既不在標(biāo)記位置附近,也不在返回位置附近25,則:讀取光標(biāo)的位置數(shù)據(jù)及其附近文字26,將讀取的數(shù)據(jù)存入公共變量B(作為新的返回數(shù)據(jù))27,再根據(jù)公共變量A和程序處理,將視圖切換回標(biāo)記位置28。
<3>切換模塊由轉(zhuǎn)回2模塊完成,獲取當(dāng)前光標(biāo)的一個參數(shù)值,根據(jù)這個參數(shù)值(這個參數(shù)值可以是頁數(shù)、段數(shù)等,在實施例和附圖中此參數(shù)值都是頁數(shù))與標(biāo)記位置、返回位置的相應(yīng)參數(shù)值比對結(jié)果,得出當(dāng)前光標(biāo)是否在標(biāo)記位置或返回位置的附近處,并在兩個標(biāo)記位置間做出相應(yīng)的視圖切換操作:
(1)若光標(biāo)在標(biāo)記位置附近,則切換視圖至返回位置,
(2)若光標(biāo)不在標(biāo)記位置附近,則切換視圖回標(biāo)記位置。
<4>切換模塊由轉(zhuǎn)回3模塊完成,此模塊有兩個關(guān)鍵步驟:a.聲明一個公共變量, 是作為判斷上次切換至哪個標(biāo)記位置的標(biāo)識,b. 獲取當(dāng)前光標(biāo)的一個參數(shù)值(這個參數(shù)值可以是頁數(shù)、段數(shù)等,在實施例和附圖中此參數(shù)值都是頁數(shù)),并將之與各個標(biāo)記位置的相應(yīng)參數(shù)值比對,是用來避免從某個標(biāo)記位置切換至同一個標(biāo)記位置的無效操作;以下為標(biāo)記模塊為3個時的轉(zhuǎn)回3模塊技術(shù)方案:
(1)若前一次切換至標(biāo)記3或沒有前一次切換記錄,且當(dāng)前位置不在標(biāo)記1位置附近時,切換視圖至標(biāo)記1;
(2)若前一次切換至標(biāo)記3,且當(dāng)前位置在標(biāo)記3位置附近時,切換視圖至標(biāo)記1;
(3)若前一次切換至標(biāo)記3或沒有前一次切換記錄,且當(dāng)前位置在標(biāo)記1位置附近時,切換視圖至標(biāo)記2;
(4)若前一次切換至標(biāo)記1,且當(dāng)前位置不在標(biāo)記2位置附近時,切換視圖至標(biāo)記2;
(5)若前一次切換至標(biāo)記1,且當(dāng)前位置在標(biāo)記2位置附近時,切換視圖至標(biāo)記3;
(6)若前一次切換至標(biāo)記3,且當(dāng)前位置不在標(biāo)記3位置附近時,切換視圖至標(biāo)記3。
4、說明模塊:將標(biāo)記文段與返回文段的位置數(shù)據(jù)及其附近文字對齊后呈現(xiàn)給用戶。
本發(fā)明的有益效果(以實施例1來舉例說明):
例如:(1)、當(dāng)用戶閱讀大型文檔至文段X時,想要查看一下前文相距很遠(yuǎn)的文段Y,然后再回到文段X繼續(xù)閱讀??梢詫⒐鈽?biāo)移至文段X,并點擊“標(biāo)記”按鈕。那么在用戶找到并查看完文段Y后,點擊“轉(zhuǎn)至”按鈕,頁面視圖會立刻切換回文段X。這樣便節(jié)省了用戶找回文段X的時間,提高了用戶體驗和效率。
(2)、接著上面的例子,若用戶在切換回文段X后,想要再次回到文段Y(比如,用戶在剛才沒有看清楚文段Y,或者還想要查看文段Y附近的文段),那么在(1)中點擊“轉(zhuǎn)至”按鈕前,需要在文段Y處點擊一下鼠標(biāo)左鍵。這樣,當(dāng)用戶點擊“返回”按鈕時,即可回到文段Y(轉(zhuǎn)至前的光標(biāo)位置)。這樣便節(jié)省了用戶找回文段Y的時間,提高了用戶體驗和效率。而且,可以通過反復(fù)點擊“轉(zhuǎn)至”、“返回”這兩個按鈕,使得視圖在文段X與文段Y間反復(fù)切換,方便用戶對這兩個文段進行比對、查看,提高了用戶體驗和效率。
(3)、當(dāng)用戶把文段X作為參照文段(比如,文段X是全文的參考表、說明表、注意事項等),且與其有關(guān)的多個文段(返回位置)反復(fù)進行對比查看時,本發(fā)明相較于其他方法(‘超鏈接需要將與文段X有關(guān)的所有普通文段設(shè)置為標(biāo)簽,還需要不停的修改超鏈接以對應(yīng)不同的標(biāo)簽’、‘交叉引用與超鏈接一樣麻煩’、上文提到的常用方法等)的優(yōu)勢最為明顯,因為用戶能夠使用光標(biāo)快速的、方便的、靈活的定位返回位置。
(4)、用戶在點擊“說明”按鈕后,程序會將標(biāo)記位置附近的文字與返回位置附近的文字一起對齊呈現(xiàn)給用戶。方便用戶查看、比對。
因此,通過本發(fā)明說提供的“標(biāo)記”、“轉(zhuǎn)至”、“返回”、“說明”功能組,可以讓用戶快速、方便的定位、反復(fù)切換、對比查看文段。提高了用戶在閱讀、編輯時的用戶體驗和效率,節(jié)省了用戶的時間。
附圖說明:
本發(fā)明的主要流程由以下的實施例及其相應(yīng)附圖給出。
圖1是本發(fā)明實施例1的主流程圖;
圖2是本發(fā)明實施例2的主流程圖;
圖3是本發(fā)明實施例3的主流程圖;
圖4是本發(fā)明的標(biāo)記模塊;
圖5是本發(fā)明的轉(zhuǎn)至模塊;
圖6是本發(fā)明的返回模塊;
圖7是本發(fā)明的說明模塊;
圖8是本發(fā)明的轉(zhuǎn)回模塊;
圖9是本發(fā)明的轉(zhuǎn)回2模塊;
圖10是本發(fā)明的轉(zhuǎn)回3模塊;
圖4作為本發(fā)明的摘要附圖。
具體實施方式
實施例1:
現(xiàn)在將參考示出本發(fā)明的示范性實施例的附圖1,對本發(fā)明進行更全面的描述。然而,可以以許多不同的程序語言、形式來體現(xiàn)本發(fā)明,而不應(yīng)將本發(fā)明解釋為僅限于在這里所描述的實施例;相反,這些實施例是示范性的,并且旨在將本發(fā)明的概念全面?zhèn)鬟_給本領(lǐng)域的技術(shù)人員。
1.在Word中建立4個按鈕,作為一組快捷鍵。同時,分別命名為:“標(biāo)記”、“轉(zhuǎn)至”、“返回”和“說明”。將這4個按鈕依次映射到“標(biāo)記”、“轉(zhuǎn)至”、“返回”、“說明”4個方法上(使用onAction)。
2.標(biāo)記模塊:
(1)讀取光標(biāo)位置數(shù)據(jù)1。在這里,以頁數(shù)、行數(shù)來定位,以提取本行文字(附近文字)提供給“說明模塊”來幫助用戶比對查看。
(2)將讀取的數(shù)據(jù)分別存入公共變量a、b、c 2。主代碼為:
a = Selection.Information(3)
b = Selection.Information(10)
Selection.HomeKey unit:=wdLine
Selection.EndKey unit:=wdLine, Extend:=wdExtend
c = Selection.Range.Text
3.轉(zhuǎn)至模塊:
(1)讀取光標(biāo)位置數(shù)據(jù)(頁數(shù)、行數(shù))和本行文字(附近文字)3。
(2)將讀取的數(shù)據(jù)分別存入公共變量e、f、g 4。
(3)通過讀取公共變量a、b的值,以及運用VBA的光標(biāo)至首、GoTo、和MoveDown方法,將視圖切換至標(biāo)記位置5。
4.返回模塊:
通過讀取公共變量e、f的值,以及運用VBA的光標(biāo)至首、GoTo和MoveDown方法,將視圖切換至返回位置6。
5.說明模塊:
通過讀取公共變量a、b、e、f、c、g的值,將標(biāo)記文段與返回文段的位置數(shù)據(jù)及其本行文字(附近文字)呈現(xiàn)給用戶7。
6.結(jié)束。
實施例2:
現(xiàn)在將參考示出本發(fā)明的示范性實施例的附圖2,對本發(fā)明進行更全面的描述。
1.使用VBA在Word中建立3個按鈕,作為一組快捷鍵。同時,分別命名為:“標(biāo)記”、“轉(zhuǎn)回”和“說明”。將這3個按鈕依次映射到“標(biāo)記”、“轉(zhuǎn)回”、“說明”3個方法上(使用onAction)。
2.標(biāo)記模塊:
(1)讀取光標(biāo)位置數(shù)據(jù)8。在這里,以頁數(shù)、行數(shù)來定位,以本行文字(附近文字)提供給“說明模塊”來幫助用戶比對查看。
(2)將讀取的數(shù)據(jù)分別存入公共變量a、b、c 9。主代碼為:
a = Selection.Information(3)
b = Selection.Information(10)
Selection.HomeKey unit:=wdLine
Selection.EndKey unit:=wdLine, Extend:=wdExtend
c = Selection.Range.Text
3.轉(zhuǎn)回模塊:
(1)讀取光標(biāo)的頁數(shù)(避免無效操作的參數(shù)值),并存入變量N 10
(2)若N等于e 11,即光標(biāo)在返回頁,則切換視圖至標(biāo)記位置12;
(3)若N等于a 13,即光標(biāo)在標(biāo)記頁,則切換視圖回返回位置14;
(4)若N既不等于a,也不等于e 15,則:讀取光標(biāo)的位置數(shù)據(jù)和本行文字(附近文字)16;將讀取的數(shù)據(jù)分別存入公共變量e、f、g 17;再通過讀取公共變量a、b的值,以及運用VBA的光標(biāo)至首、GoTo和MoveDown方法,將視圖切換回標(biāo)記位置18。
4.說明模塊:
通過讀取公共變量a、b、e、f、c、g的值,將標(biāo)記文段與返回文段的位置數(shù)據(jù)及其本行文字(附近文字)呈現(xiàn)給用戶19。
5.結(jié)束。
實施例2的優(yōu)點:將實施例1中的“轉(zhuǎn)至、返回”組合成一個功能,即“轉(zhuǎn)回”。這樣不僅節(jié)省了裝置的空間,而且讓用戶只需點擊“轉(zhuǎn)回”,即可在兩個文段間切換。
實施例2的缺點:用戶僅在兩個文段間切換時,光標(biāo)不要隨意點擊其他位置(除非確定新返回位置),因為點擊新位置后再點擊“轉(zhuǎn)至”后,程序會將此新位置看作新返回位置。
為了彌補實施例2的缺點,可以參照圖9再添加“轉(zhuǎn)回2”模塊,因為其不會記錄新的返回位置,其步驟為:
(1)獲取當(dāng)前光標(biāo)的頁數(shù)(避免無效操作的參數(shù)值),并存入變量N 41;
(2)若N=a(a為標(biāo)記位置或者標(biāo)記1位置的頁數(shù)),即光標(biāo)在標(biāo)記頁時,切換視圖至返回位置(在程序只記錄兩個標(biāo)記位置時,返回位置其實質(zhì)就是標(biāo)記2位置)42;
(3)當(dāng)N<>(不等于)a時,即光標(biāo)不在標(biāo)記頁時,切換視圖至標(biāo)記位置(即標(biāo)記1位置)43。
實施例3:
現(xiàn)在將參考示出本發(fā)明的示范性實施例的附圖3,對本發(fā)明進行更全面的描述。
1.使用VBA在Word中建立5個按鈕,作為一組快捷鍵。同時,分別命名為:“標(biāo)記1”、“標(biāo)記2”、“標(biāo)記3”、“轉(zhuǎn)回3”和“說明”。將這5個按鈕依次映射到“標(biāo)記1”、“標(biāo)記2”、“標(biāo)記3”、“轉(zhuǎn)回3”和“說明”5個方法上(使用onAction)。
2.標(biāo)記1模塊29:
(1)讀取光標(biāo)位置數(shù)據(jù)。在這里,以頁數(shù)、行數(shù)來定位,以本行文字(附近文字)提供給“說明模塊”來幫助用戶比對查看。
(2)將讀取的數(shù)據(jù)分別存入公共變量a1、b1、c1。主代碼為:
a1 = Selection.Information(3)
b1 = Selection.Information(10)
Selection.HomeKey unit:=wdLine
Selection.EndKey unit:=wdLine, Extend:=wdExtend
c1 = Selection.Range.Text
2.標(biāo)記2模塊30:
(1)讀取光標(biāo)位置數(shù)據(jù)。在這里,以頁數(shù)、行數(shù)來定位,以本行文字(附近文字)提供給“說明模塊”來幫助用戶比對查看。
(2)將讀取的數(shù)據(jù)分別存入公共變量a2、b2、c2。
3.標(biāo)記3模塊31:
(1)讀取光標(biāo)位置數(shù)據(jù)。在這里,以頁數(shù)、行數(shù)來定位,以本行文字(附近文字)提供給“說明模塊”來幫助用戶比對查看。
(2)將讀取的數(shù)據(jù)分別存入公共變量a3、b3、c3。
4.轉(zhuǎn)回3模塊:
(1)聲明公共變量M 33;
(2)獲取當(dāng)前光標(biāo)的頁數(shù)(避免無效操作的參數(shù)值),并存入變量N 34;
(3)當(dāng)M=0或3,且N<>(不等于)a1時35,或者當(dāng)M=3,且N=a3時40,命令M=1,且切換視圖至標(biāo)記1;
(4)當(dāng)M=0或3,且N=a1時36,或者當(dāng)M=1,且N<>a2時37,命令M=2,且切換視圖至標(biāo)記2;
(5)當(dāng)M=1,且N=a2時38,或者當(dāng)M=3,且N<>a3時39,命令M=2,且切換視圖至標(biāo)記3;
5.說明模塊32:
通過讀取公共變量a1、b1、c1、a2、b2、c2、a3、b3、c3的值,將標(biāo)記文段與返回文段的位置數(shù)據(jù)及其本行文字對齊后呈現(xiàn)給用戶。
6.結(jié)束。
以上所述僅為本發(fā)明的較佳實施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的原則和精神之內(nèi)所作的任何修改、等同替換和改進等,均就包含在本發(fā)明的保護范圍之內(nèi)。