TW475145B - Expanding method of toolbar function - Google Patents

Expanding method of toolbar function Download PDF

Info

Publication number
TW475145B
TW475145B TW88111099A TW88111099A TW475145B TW 475145 B TW475145 B TW 475145B TW 88111099 A TW88111099 A TW 88111099A TW 88111099 A TW88111099 A TW 88111099A TW 475145 B TW475145 B TW 475145B
Authority
TW
Taiwan
Prior art keywords
toolbar
function
data
function expansion
dynamic database
Prior art date
Application number
TW88111099A
Other languages
English (en)
Inventor
Kuang-Shin Lin
Jeff Song
Xiuewu Wang
Original Assignee
Inventec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inventec Corp filed Critical Inventec Corp
Priority to TW88111099A priority Critical patent/TW475145B/zh
Application granted granted Critical
Publication of TW475145B publication Critical patent/TW475145B/zh

Links

Landscapes

  • User Interface Of Digital Computer (AREA)

Description

475145 _案號88Π1099_年月曰 修正_ 五、發明說明(1) 【發明之應用範圍】 本發明係有關一種工具列功能的擴充方法,特別是一 種對W i ndows系列操作系統之應用程式的工具列進行功能 擴充的方法,用於在使用者操作工具列的過程中,即時地 擴充或是修改工具列的功能。 【發明之相關技術及背景】 在W i n d 〇 w s作業系統中運作的習知應用程式,如: 〇ffice95系-列文書應用程式(word 95, excel 95, powerpoint 95......),都具有選單(menu)和工具列(tool bar)供使用者選取或操作,它是由一系列的圖形按鈕組 成,每個圖形按鈕都可以執行特定的功能,藉此方便使用 者操作,提高操作效率。若是要對某一應用程式之工具列 的功能進行擴充(例如增加或刪除工具列中之圖形按鈕), 修改工具列之功能,或是增加原有工具列所不具有的功 能,一種方式是取得應用程式的原始碼(Source code), 對其進行編修,另一種方式則是取用其他應用程式之工具 列的功能而實現功能的擴充。 對大部份習用之應用程式而言,如果某一應用程式無 法取得另一應用程式的原始碼(S 〇 u r c e c 〇 d e ),則無法透 過取用另一應用程式之工具列的功能達到擴充本身工具列 之功能的目的,也就是說,如果不是程式設計師本身開發 的應用程式,就不能透過取用其他應用程式之工具列功能 實現對本身工具列之結構進行修改和擴充。 【發明之目的與概述】 本發明之目的在提供一種對Windows作業系/統之應用
第4頁 475145 五程統列 取資具 法 程統列(1鈕 作組佇充檢目 人時 案號88111099 年月日 修正 、發明說明(2) 式的工具列結構進行功能擴充的方法,用以在一電腦系 中,實現使用者對工具列進行操作時,即時地擴充工具 之功能的目的。 本發明之另一目的在提供一種利用攔截程序,即時獲 當前工具列之操作資料的方法,以便根據所獲得的操作 料自一動悲資料庫中檢索取得所需的貢料’用於擴充工 列的功能。 本發明_之再一目的在提供一種工具列之功能的擴充方 ,用於增加原應用程式之工具列中所不具備的功能。 本發明提供了 一種對W i ndows系列作業系統中之應用 式的工具列結構進行功能擴充的方法,用以在一電腦系 中,實現使用者對工具列進行操作時,即時地擴充工具 之功能。例如:當某一應用程式的擴充功能按鈕標誌 con)被點選時,執行功能的擴充,或者對當前顯示的按 文字進行即時漢化等功能。 本發明所揭露之方法主要是藉由下列之功能模組的運 而完成的,其包括有:一攔截模組、一擴充功能處理模 以及一動態資料庫。利用攔截模組獲得操作系統之訊息 列(M a s s a g e q u e u e )中有關工具列結構的操作資料,擴 功能處理模組則是根據獲得的操作資料自動態資料庫中 索取得所需的資料,完成對工具列結構進行功能擴充的 / 二&一一 ΤΠΊΨ 種t5 Rr >uu 男湏 是^;探 別)f以 Θ 特 m可丄術 式U技 程(r的 用時明 應行發 一運本 某}用 在式利 種程。 一用法 了應方 供之的 提計充 明設擴 發發能 。本開功 的所之
第5頁 475145 _案號 88111099_年月日__ 五、發明說明(3) 應用程式之工具列的即時操作資料,並可以對該工具列的 功能進行擴充,並且不影響到應用程式本身原有的功能, 這種功能擴充可以包括兩個方面,一是在保證工具列原有 功能的情況下,對應用程式所使用的工具列功能進行增 加、刪除、修改等;二是在工具列中增加原有工具列中所 不具備的功能。 有關本發明之詳細技術内容及實施例,茲配合圖式說 明如後。_ 【實施例說明】 請參閱「第1圖」,係為實現本發明之方法的電腦系 統方塊圖。其係由下列之硬體部份與軟體部份所構成,包 括有: 一 Windows系列的作業系統10 (如Wind〇ws 3. 1, Windows 95, Wind 〇ws9 8等),用以提供應用程式一種視窗 作業的環境; 一輸入單元2 0(如鍵盤,滑鼠或其他功能類似者),可 供使用者輸入命令或進行工具的操作; 一輸出單元3 0 (如顯示器、觸摸式顯示器、剩σ八或其 他功能類似的多媒體輸出設備),用以顯示可視化的操作 訊息或是聲音訊息; 一訊息循環仔列4 0 (M a s s a g e 1 ο ο ρ ); 一應用程式 50(Applicati〇n); ' 一攔截模組6 0 ( Η ο o k ); 一功能擴充處理模組7 0 ;以及 一動態資料庫 80(Dynamic Link Library,’ D L L )。
第6頁 475145 _案號 88111099_年月日__ 五、發明說明(4) 關於一般W i n d〇w s系列之作業系統(W i n d〇w s 3.1,Windows 9 5或Windows 9 8等)的運作,其中所有的事 件處理都是通過訊息來驅動的,訊息循環佇列4 0就是一種 運送作業系統1 0之所有訊息的系統循環,就是說,所有的 訊息都需進入訊息循環佇列40,再分發(Dispatch)給各個 應用程式5 0 (如「第2 A圖」所示)。而有關工具列之訊息則 經訊息循環佇列4 0判斷,再把有關工具列的訊息分發給工 具列所屬的應用程式5 0 (就是工具列的宿主程式)。本發明 利用一攔截(Η ο 〇 k )模組6 0在訊息傳送的過程中加入一個過 濾(如「第2 B圖」所示)。在本發明所揭露的方法中,攔截 模組6 0的作用是攔截訊息循環佇列4 0之中的每一條訊息, 並傳送至功能擴充處理模組7 0。功能擴充處理模組7 0則是 對獲得的訊息進行過濾和相應的處理,對於需要進行處理 的訊息,再於動態資料庫8 0中檢索,用於取得所需的資料 (就是用於擴充工具列之功能所需的資料),再對取得的資 料處理,然後將處理的結果輸出至輸出單元3 0或是應用程 式5 0,完成工具列功能的擴充;相反地,對於不需要的訊 息不作處理。 在W i n d 〇 w s作業系統1 0之中,任一種包含有工具列的 應用程式5 0是一個獨立的進程(procedure ),如果想對其 進行擴充’必須具有和其共旱資料的能力’就一般的動悲 資料庫(DLL)而言,不同的應用程式雖然可以共享動\態資 料庫的代碼段(C 〇 d e S e g m e n t),但對於資料段(D a t a S e g m e n t)而言,每一個應用程式所取得的都是對全部資料 段的複本(c 〇 p y )。例如、在同一個動態資料庫冲,某一應
第7頁 475145 _案號88Π1099_年月日__ 五、發明說明(5) 用程式改變了動態資料庫中的一個變量(Variable)XX,這 種改變對於另一個使用這個動態資料庫的應用程式來說, 並不是可見的,因為它僅僅是保存了動態資料庫中全部變 量的另一份複本(copy)。而在實現本發明所揭露之方法 時,我們需要的是任何使用該動態資料庫的應用程式5 0改 變資料段的内容時,所有使用該動態資料庫的應用程式5 0 都可見,也就是說,需要維護一份唯一的資料段(D a t a Segment),_以達到資料共享之目的,而本發明的實施手段 就是透過在動態資料庫80之中將一資料段定義(define)為 共享資料段81(Sharing Data Segment)的方式加以實現。 而這個動態資料庫8 0的結構如「第3圖」所示,自「第3 圖」中可以看見,不同之應用程式50a,50 b除了各自具有 一個資料段之複本C 1,C 2之外,還共同使用其中的共享資 料段8 1。 在動態資料庫8 0之中記錄有應用程式5 0之中有多少個 選單,多少個工具列,每個選單有多少個子項,每個工具 列有多少個圖形按鈕,每個選單的名稱與標示(I D )以及每 個工具列的名稱與標示(I D ),以及用於擴充功能的相關資 料項等,以便提供功能擴充處理模組7 0進行工具列之功能 擴充處理時所需的資料。 本發明之主要步驟流程,如「第4圖」所示,包括 有: , 1.首先載入預定義之動態資料庫,其中包括有欲擴充功能 之應用程式的相關資料,也就是後續步驟中所稱包含有 欲監視之工具列的應用程式,及其所包含之工具列的相
第8頁 475145 _案號88111099_年月曰__ 五、發明說明(6) 關資料, 2. 啟動並初始化攔截程序60 (即為一種鉤接函數,Hook)和 監控方式,用以監控並且攔截作業系統1 0之訊息循環佇 列4 0中的訊息; 3. 取得前述訊息中有關工具列的操作資料,此一操作資料 包含有:當前彈出之工具列的提示(handle),當前彈出 之工具列的名稱,與游標的位置;以及 4. 檢索動態_資料庫取得用以擴充工具列功能所需的功能擴 充資料’並且處理功能擴充資料完成工具列的功能擴 充。 . 其中的步驟3還包括有: A. 判斷攔截程序6 0發來的訊息是否為需要監視的窗口類 (即為一種窗口物件類別(C 1 a s s ),其中包含有欲監視之 工具列窗口),如果不是則等待下一條自攔截程序6 0發 來的訊息,否則進行下一步驟; B. 判斷前述的窗口類訊息是否是工具列的宿主窗口 ,如果 不是則等待自攔截程序6 0發來的下一條訊息,否則進行 下一步驟;以及 C. 取得工具列的操作資料。 前述的步驟4則更包含有: a. 判斷得到的工具列是否為需要擴充功能的工具列,如果 不是,則返回至載入預定義之動態資料庫的步驟1'重新 開始,否則在輸出單元中顯示一個擴充功能的提示(如 圖形按鈕或對話框); b. 檢索讀取對應之動態資料庫,取得工具列的識別碼
475145 案號 88111099 年 月 修正 五、發明說明(7) (ID); c. 根據取得的工具列識別碼(I D)’從動態資料庫中檢索取 得對應之資料段的資料識別碼(I D);以及 d. 根據取得的資料識別碼(I D ),從動態資料庫檢索取得用 以擴充工具列功能所需的功能擴充資料,並且透過功能 擴充處理模組7 0處理功能擴充資料完成工具列的功能擴 充。 最後以—「第5圖」所示的流程圖,說明利用本發明之 技術對I n t e r n e ΐ E X p 1 〇 r e r 5 . 0應用程式的工具列提供即 時線上幫助之擴充功能的具體實施例。本實施例的目的是 對標準的工具列功能加以擴充,實現可以利用多媒體播放 的方式顯示工具列中之某一功能,以便使用者能更直觀, 更方便的學習和使用此一應用程式,其表現形式是在可進 行多媒體即時線上幫助的工具列旁增加一幫助窗口 ,當使 用者點選某一幫助選項按鈕的時侯,就會在該幫助窗口中 播放或顯示關於該項按鈕功能的多媒體資料。 達成以上擴充工具列功能的目的,可藉由下列之步驟 實現(如「第5 A,5 B圖」所示),其包括有: 1 ·首先載入預定義的動態資料庫; 2 ·啟動並初始化攔截(Hook)程序60和監控方式,用以監 控並且攔截作業系統1 0之訊息循環佇列4 0中的訊息; 3 ·判斷攔截程序6 0所攔截的訊息是否為 ‘
RebareWindow32(此為一種窗口物件類別(Class),其 中包含有欲監視之工具列窗口)類發出的通知訊息 (N〇t i f y,此為子窗口通知其父窗口的訊息’),若不是
第10頁 475145 __案號 88111099_年月日__ 五、發明說明(8) 則等待下一條自攔截程序6 0發來的訊息; 4 ·判斷該R e b a r e W i n d 〇 w 3 2的宿主應用程式是否即為欲擴 充功能的Internet Explorer 5.0應用程式,若為是 進行下一步驟,否則等待下一條自攔截程序6 0發來的 訊息; 5 ·判斷Not i fy是否為工具列的操作訊息(如點選該工具 列),如果是則取得此一工具列的句柄及名稱,否則 等待下_ 一條自攔截程序6 0發來的訊息; 6 ·根據付到之工具列的句柄及名稱檢索動恶貢料庫’取 得工具列的識別碼(I D); 7 ·根據該工具列的識別碼在動態資料庫中檢索,如果有 包含有線上即時幫助選項功能,則進行下一步驟,否 則返回至載入預定義之動態資料庫的步驟1 ; 8 ·根據游標的位置取得工具列的位置; 9 ·在該工具列之旁建立一個幫助(Tool Tip)窗口,在此一 幫助窗口中的每一個幫助項目對應於一個幫助項識別 碼I D ; 1 0 ·當幫助(Τ ο ο 1 T i p )窗口中的某一幫助項目(如播放圖形 的按鈕)被選取時,取得該幫助項目的識別碼(I D); 1 1 ·檢索該動態資料庫,找出對應之多媒體的控制項; 1 2 ·調用一多媒體播放處理模組處理該多媒體控制項。 【發明之功效】 " 本發明提供了 一種對W i ndows系列操作系統之應用程 式中的工具列進行功能擴充的方法,可以在一電腦系統 中,當使用者對工具列進行操作時,擴充工具列的功能,
第11頁 475145 __案號88Π1099_年月日__ 五、發明說明(9) 例如添加,修改,替換,删除某些選項按鈕等等。例如, 利用本發明可以實現對工具列的即時漢化(日化,韓化等 等),並且不破壞工具列原有的功能;利用本發明還可以 實現多媒體的線上即時幫助功能,當使用者將游標移到工 具列上的某一選項按鈕時,利用影像聲音等多媒體的播放 方式向使用者講解該工具列上某一選項按鈕的功能等等。
第12頁 475145 __案號 88111099_年月日__ 圖式簡單說明 第1圖,係為實現本發明之方法的電腦系統方塊圖。 第2 A圖,顯示在一電腦系統中未加入本發明之攔截程 序時,應用程式與作業系統之間的運作關係圖。 第2 B圖,顯示在一電腦系統中加入本發明之攔截程序 時,應用程式與作業系統之間的運作關係圖。 第3圖,為本發明之動態資料庫的結構圖。 第4圖,為本發明之主要步驟流程圖。 第5 A,5 B圖,為本發明之一實施例的詳細步驟流程 圖。 【圖式符號說明】 10.......作業系統 20.......輸入單元 30.......輸出單元 4 0.......訊息循環符列(M a s s a g e 1 ο〇p ) 50.......應用程式(Application) 50a,50b.....應用程式(Application) 6 0.......攔截模組(Η ο o k ) 7 0.......功能擴充處理模組 80 .....動態資料庫(Dynamic Link Library,DLL) 81 .......共享資料段(Sharing Data Segment) C 1,C 2......資料段之複本
第13頁

Claims (1)

  1. 475145 _案號88111099_年月日 修正 _ 六、申請專利範圍 1. 一種工具列功能的擴充方法,被應用於一電腦系統的 視窗作業(W i n d 〇 w s )環境中,提供一種在操作工具列之 時可以擴充工具列功能的方法,包括有: 載入預定義之動態資料庫,其中包括有欲擴充功能 之應用程式的相關資料; 啟動並初始化一攔截程序和監控方式,用以監控並 且攔截該視窗作業系統之訊息循環佇列中的訊息; 取得_該訊息中有關工具列的操作資料;以及 根據該操作資料檢索該動態資料庫取得用以擴充該 工具列功能所需的功能擴充資料,並且處理該功能擴充 資料完成該工具列的功能擴充。 2. 如申請專利範圍第1項所述工具列功能的擴充方法,其 中載入該動態資料庫的步驟,更包括有定義一共享資料 段的步驟。 3. 如申請專利範圍第1項所述工具列功能的擴充方法,其 中該動態資料庫記錄有該應用程式之中有多少個選單, 多少個工具列,每個選單有多少個子項,每個該工具列 有多少個圖形按鈕,每個選單的名稱與標示(I D)與每個 該工具列的名稱與標示(I D ),以及用於擴充功能的相關 資料項等,以便提供功能擴充處理模組7 0進行工具列之 功能擴充處理時所需的資料。 4. 如申請專利範圍第1項所述工具列功能的擴充方法、其 中該工具列的操作資料包括有:當前彈出之該工具列的 提示(h a n d 1 e ),當前彈出之該工具列的名稱,與游標的
    第14頁 475145 案號88111099 年月日 修正 六、申請專利範圍 位置。 5. 如申請專利範圍第1項所述工具列功能的擴充方法,其 中取得有關該工具列之操作資料的步驟還包括有: 判斷該攔截程序攔截的該訊息是否為需要監視的窗 口類,如果不是則等待下一條自該攔截程序攔截的訊 息,否則進行下一步驟; 判斷前述的窗口類訊息是否為該工具列的宿主窗 口 ,如果不是則等待自該攔截程序攔截的下一條訊息, 否則進行下一步驟;以及 取得該工具列的操作資料。 6. 如申請專利範圍第1項所述工具列功能的擴充方法,其 中取得所需的該功能擴充資料,並且處理該功能擴充資 料完成該工具列之功能擴充的步驟包括有: 判斷該工具列是否為需要擴充功能的工具列,如果 不是,則返回至該載入預定義之動態資料庫的步驟,否 則顯示一個擴充功能的提示; 檢索該動態資料庫,取得該工具列的識別碼; 根據取得的該工具列識別碼,從該動態資料庫中檢 索取得對應之資料段的資料識別碼;以及 根據取得的該資料識別碼,從該動態資料庫檢索取 得用以擴充該工具列功能所需的功能擴充資料,並且處 理該功能擴充資料完成該工具列的功能擴充。/
    第15頁
TW88111099A 1999-06-30 1999-06-30 Expanding method of toolbar function TW475145B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW88111099A TW475145B (en) 1999-06-30 1999-06-30 Expanding method of toolbar function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW88111099A TW475145B (en) 1999-06-30 1999-06-30 Expanding method of toolbar function

Publications (1)

Publication Number Publication Date
TW475145B true TW475145B (en) 2002-02-01

Family

ID=21641338

Family Applications (1)

Application Number Title Priority Date Filing Date
TW88111099A TW475145B (en) 1999-06-30 1999-06-30 Expanding method of toolbar function

Country Status (1)

Country Link
TW (1) TW475145B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI609319B (zh) * 2013-01-11 2017-12-21 微軟技術授權有限責任公司 用於生產力應用之預測語境工具列

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI609319B (zh) * 2013-01-11 2017-12-21 微軟技術授權有限責任公司 用於生產力應用之預測語境工具列

Similar Documents

Publication Publication Date Title
JP4972254B2 (ja) リフレッシュ可能なWebクエリを作成するための統合された方法
JP3444471B2 (ja) 書式作成方法およびディジタル処理装置に書式作成方法を実行させるための装置可読な記憶媒体
US7849419B2 (en) Computer-implemented graphical user interface previews
JP3014284B2 (ja) ダイアログ・ボックスの表示方法及びシステム
US10762277B2 (en) Optimization schemes for controlling user interfaces through gesture or touch
US8276090B2 (en) Automatic reference note generator
CA2704080C (en) System and process for cooperatively programming a simulation program of a computer application to be developed
JP4326045B2 (ja) データプロバイダーからのデータの標準化フィルタリング方法
US7310781B2 (en) System and method for content and information transfer between program entities
US8140971B2 (en) Dynamic and intelligent hover assistance
US8689125B2 (en) System and method for automatic information compatibility detection and pasting intervention
US9171132B1 (en) Electronic note management system and user-interface
US20050154994A1 (en) System and method for invoking user designated actions based upon selected computer content
US20130212463A1 (en) Smart document processing with associated online data and action streams
US20050060719A1 (en) Capturing and processing user events on a computer system for recording and playback
US7594192B2 (en) Method and apparatus for identifying hotkey conflicts
JPH0749759A (ja) コンピュータ駐在ソフトウエアシステムに対するユーザインタフェースとしての電子的ドキュメント
US8359606B2 (en) Generic user interface command architecture
JPH10333897A (ja) プログラム開発環境のための照会選択
JP2001092914A (ja) 異なるモードによるセル名前付き範囲内の新しい要素の導入のための電子スプレッドシート内の方法およびシステム
TW475145B (en) Expanding method of toolbar function
JP3167412B2 (ja) データベース検索処理装置
JP2011508305A (ja) アプリケーションプログラム実行時に検索ウィンドウを提供するネットワーク検索法
TW523700B (en) Function program system and method based on a table structure
TW200410065A (en) Automatic testing method under Windows operating system environment

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent