TWI812072B - 視窗排列方法及視窗排列系統 - Google Patents

視窗排列方法及視窗排列系統 Download PDF

Info

Publication number
TWI812072B
TWI812072B TW111109607A TW111109607A TWI812072B TW I812072 B TWI812072 B TW I812072B TW 111109607 A TW111109607 A TW 111109607A TW 111109607 A TW111109607 A TW 111109607A TW I812072 B TWI812072 B TW I812072B
Authority
TW
Taiwan
Prior art keywords
window
simplified
application
identification code
handle
Prior art date
Application number
TW111109607A
Other languages
English (en)
Other versions
TW202338588A (zh
Inventor
廖芳文
陳炳宏
Original Assignee
緯創資通股份有限公司
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 緯創資通股份有限公司 filed Critical 緯創資通股份有限公司
Priority to TW111109607A priority Critical patent/TWI812072B/zh
Priority to CN202210341585.8A priority patent/CN116795244A/zh
Priority to US17/977,993 priority patent/US20230297210A1/en
Application granted granted Critical
Publication of TWI812072B publication Critical patent/TWI812072B/zh
Publication of TW202338588A publication Critical patent/TW202338588A/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/453Help systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04803Split screen, i.e. subdividing the display area or the window area into separate subareas

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
  • Paper (AREA)
  • Image Generation (AREA)

Abstract

一種視窗排列方法,包含:取得一前景視窗的一第一程序辨識碼;判斷第一程序辨識碼是否屬於一預設識別碼;響應於第一程序辨識碼屬於一預設識別碼,取得前景視窗的第一句柄及一第一視窗資料,並將一視窗排序應用程式的一應用程式句柄設為第一句柄的一父視窗(parent window)句柄;透過視窗排序應用程式將前景視窗的一第一工具列或一第一網址列去除,以產生一第一簡化視窗。藉此自動化的找出開啟且顯示的視窗,並且能自動化地排列簡化的視窗,且可以針對排列的好的瀏覽器,達到自動更新內容的功效。

Description

視窗排列方法及視窗排列系統
本發明實施例是關於一種排列方法,特別是關於一種應用於將視窗自動排列的視窗排列方法及視窗排列系統。
目前大數據的應用越來越多,資料收集計算之後,可以藉由瀏覽器將其分析之後的數據透過圖表方式顯示出來。但不管是Kibana或是PowerBI等其他的數據分析軟體,目前大多是透過瀏覽器將大數據呈現出來。目前大尺寸高解析度的螢幕越來越多,這些螢幕在會議室可以作為投影屏幕使用,所以為了能充分利用大尺寸的螢幕,Kibana或是PowerBI可以開啟多個瀏覽器並且開啟多個表格或圖表來當作比較報告用,但瀏覽器本身除了呈現表格或資料之外,還會呈現一些在報告時不太重要的視窗範圍,此些範圍占用閱讀空間,使閱讀上不太完美。
因此,如何更佳的使用大尺寸高解析度的螢幕,達到投影屏幕的最大效益,已成為重要的待解決問題之一。
本揭露內容之一態樣提供了一種視窗排列方法,包含:取得一前景視窗的一第一程序辨識碼;判斷該第一程序辨識碼是否屬於一預設識別碼;響應於該第一程序辨識碼屬於該預設識別碼,取得該前景視窗的一第一句柄及一第一視窗資料,並將一視窗排序應用程式的一應用程式句柄設為該第一句柄的一父視窗句柄;透過該視窗排序應用程式將該前景視窗的一第一工具列或一第一網址列去除,以產生一第一簡化視窗;以及透過該視窗排序應用程式依據該第一視窗資料及一第一預設視窗位置,將該第一簡化視窗排序於該視窗排序應用程式的一視窗中。
本揭露內容之一態樣提供了一種視窗排列系統包含一處理器以及一儲存裝置。處理器用以存取儲存裝置所儲存之視窗排列應用程式,以執行一視窗排列應用程式,其中處理器執行:取得一前景視窗的一第一程序辨識碼;判斷該第一程序辨識碼是否屬於一預設識別碼;響應於該第一程序辨識碼屬於該預設識別碼,取得該前景視窗的一第一句柄及一第一視窗資料,並將一視窗排序應用程式的一應用程式句柄設為該第一句柄的一父視窗句柄;透過該視窗排序應用程式將該前景視窗的一第一工具列或一第一網址列去除,以產生一第一簡化視窗;以及透過該視窗排序應用程式依據該第一視窗資料及一第一預設視窗位置,將該第一簡化視窗排序於該視窗排序應用程式的一視窗中。
本發明實施例所示之視窗排列方法及視窗排列方法可以自動化的找出開啟且顯示於顯示器的瀏覽器或其他視窗,並且能自動化地排列瀏覽器或其他視窗,且可以針對排列的好的瀏覽器縮減工具列,並達到自動更新內容的功效。
以下說明係為完成發明的較佳實現方式,其目的在於描述本發明的基本精神,但並不用以限定本發明。實際的發明內容必須參考之後的申請專利範圍。
必須了解的是,使用於本說明書中的”包含”、”包括”等詞,係用以表示存在特定的技術特徵、數值、方法步驟、作業處理、元件以及/或組件,但並不排除可加上更多的技術特徵、數值、方法步驟、作業處理、元件、組件,或以上的任意組合。
於申請專利中使用如”第一”、"第二"、"第三"等詞係用來修飾申請專利中的元件,並非用來表示之間具有優先權順序,先行關係,或者是一個元件先於另一個元件,或者是執行方法步驟時的時間先後順序,僅用來區別具有相同名字的元件。
請一併參照第1~3圖,第1圖係依照本發明一實施例繪示一種在同一視窗開啟多個瀏覽器之示意圖。第2圖係根據本發明之一實施例繪示一種視窗排列系統100之示意圖。第3圖係根據本發明之一實施例繪示一種視窗排列方法300之流程圖。視窗排列方法300可以由視窗排列系統100實施之。
於一實施例中,如第1圖所示,在同一視窗開啟多個瀏覽器時,雖然可以一次比對很多個圖表或表格,但是瀏覽器的工具列跟網址列TL佔用了空間,使閱讀上不是那麼完美。如果不需要工具列跟網址列TL,可以使用瀏覽器的全螢幕模式(例如在一些電腦室設置鍵盤上的按鍵“F11”進入全螢幕模式),然而,如此一來,只能呈現一個瀏覽器之視窗。
請參閱第2圖,本發明實施例中之視窗排列系統100中包含處理器10、儲存裝置20及顯示器30。
於一實施例中,處理器10耦接於儲存裝置20,處理器10用以存取儲存裝置20所儲存之程式,例如視窗排列應用程式,以執行一視窗排列應用程式。
於一實施例中,處理器10可由積體電路如微控制單元(micro controller)、微處理器(microprocessor)、數位訊號處理器(Digital Signal Processor,DSP)、現場可程式化邏輯閘陣列(Field Programmable Gate Array,FPGA)、特殊應用積體電路(Application Specific Integrated Circuit,ASIC)或一邏輯電路來實施。
於一實施例中,儲存裝置20可被實作為唯讀記憶體、快閃記憶體、軟碟、硬碟、光碟、隨身碟、磁帶、可由網路存取之資料庫或熟悉此技藝者可輕易思及具有相同功能之儲存媒體。
於一實施例中,視窗排列應用程式可以由軟體實現之。
於一實施例中,視窗排列應用程式的功能可以由各自獨立於儲存裝置20之外的硬體電路或具有特定功能的晶片以實現之。
於一實施例中,處理器10用以存取儲存裝置20所儲存之視窗排列應用程式,以執行一視窗排列應用程式,其中處理器10執行:取得一前景視窗的一第一程序辨識碼;判斷第一程序辨識碼是否屬於一預設識別碼;響應於第一程序辨識碼屬於預設識別碼,取得前景視窗的一第一句柄及一第一視窗資料,並將一視窗排序應用程式的一應用程式句柄設為第一句柄的一父視窗句柄;透過視窗排序應用程式將第一視窗的一第一工具列或一第一網址列去除,以產生一第一簡化視窗;以及透過視窗排序應用程式依據第一視窗資料及一第一預設視窗位置,將第一簡化視窗排序於視窗排序應用程式的一視窗中。以下以第3圖以實施例詳述具體實施方式。
於一實施例中,處理器10用以存取儲存裝置20所儲 存之視窗排列應用程式,以執行一視窗排列應用程式,其中處理器10執行視窗排列應用程式時,執行以下步驟。
於步驟310中,處理器10取得一前景視窗的一第一程序辨識碼。
於一實施例中,請參閱第4圖,第4圖係依照本發明一實施例繪示一種在開啟多個瀏覽器的工作管理員介面之示意圖。
於第4圖中,以開啟4個Chrome瀏覽器為例,顯示器30上可以顯示4個Chrome瀏覽器。若開啟工作管理員介面,會發現Chrome瀏覽器的顯示方式都是一個主要的應用程序(process),並且帶入他的子程序(sub-process),使得雖然只開啟4個Chrome瀏覽器,但出現一串chrome.exe。如第4圖所示,使用者難以由這一串chrome.exe得知,其中哪4個程序對應至顯示器30上所顯示4個Chrome瀏覽器。本發明不限於應用於Chrome瀏覽器上,只要是具有句柄(handle)的應用程式都可以適用,為方便敘述,以下以Chrome瀏覽器為例。
於一實施例中,由於第4圖中的chrome.exe的程序辨識碼(process identification,PID)都一樣,句柄是不一樣的,每一個Chrome瀏覽器視窗只會有一個句柄,透過尋找第4圖中每個chrome.exe的視窗的句柄,以及尋找前景視窗的句柄,可以分別找出哪4個程序對應至顯示器30上所顯示的4個Chrome瀏覽器。於一實施例中,句柄是一個標識符,是拿來標識對象或者項目的,在此處是用以標識顯示器30上所顯示的4個Chrome瀏覽器。於一實施例中,每個視窗的句柄會由作業系統自動產生。
藉此,可以找出顯示器30上所顯示4個Chrome瀏覽 器各自對應的chrome.exe。
於一實施例中,第4圖中的視窗排列應用程式的程序代碼為WiTidy.exe,代表視窗排列應用程式是多個Chrome瀏覽器程序的父程序,換言之,多個Chrome瀏覽器程序是視窗排列應用程式的子程序。
於一實施例中,由於每一個顯示器30上所顯示的每一Chrome瀏覽器視窗只會有一個句柄,但第4圖中的每個Chrome瀏覽器對應的chrome.exe的程序辨識碼都是相同的。
於一實施例中,當一個開啟Chrome瀏覽器的程序被呼叫,此Chrome瀏覽器視窗會被帶到最前景,此時處理器10可以找出此Chrome瀏覽器視窗的句柄,並透過此句柄,查詢到此Chrome瀏覽器的程序所對應的程序辨識碼。
於一實施例中,處理器10於多個前景視窗中取得對應第一視窗W1的第一程序辨識碼,處理器10於多個前景視窗中取得對應第二視窗W2的第二程序辨識碼,處理器10於多個前景視窗中取得對應第三視窗W3的第三程序辨識碼,處理器10於多個前景視窗中取得對應第四視窗W4的第四程序辨識碼。
於一實施例中,處理器10預先將此些第一視窗~第四視窗W1~W4各自對應的第一程序辨識碼~第四程序辨識碼紀錄在儲存裝置20中,作為預設識別碼。
於一實施例中,處理器10判斷前景視窗的第一程序辨識碼是否屬於一預設識別碼。
於步驟320中,處理器10響應於第一程序辨識碼屬於預設識別碼,取得前景視窗的一第一句柄,取得前景視窗的一第一 視窗資料,並將一視窗排序應用程式的一應用程式句柄設為第一句柄的一父視窗句柄。
於一實施例中,視窗排序應用程式的應用程式句柄透過處理器10設為第一句柄的父視窗句柄,代表前景視窗中的第一視窗W1為視窗排序應用程式的視窗的一子視窗(child window),第一視窗W1顯示於視窗排序應用程式的視窗中。
於一實施例中,處理器10將第一視窗W1的Chrome瀏覽器設為全螢幕,第一視窗W1的多個子視窗各自對應的第一程序辨識碼都會是一樣的程序辨識碼。
於一實施例中,每啟動一個Chrome瀏覽器,此Chrome瀏覽器就會被處理器10設置到顯示器30顯示畫面的最前景,處理器10查詢此Chrome瀏覽器的第一程序辨識碼是不是與預設識別碼相同,若此Chrome瀏覽器的第一程序辨識碼與預設識別碼相同,則將此Chrome瀏覽器與先前預設的第一視窗W1視為同一個視窗。
於一實施例中,響應於第一程序辨識碼屬於預設識別碼,處理器10取得前景視窗(例如第一視窗W1)的一第一句柄,取得前景視窗的一第一視窗資料,並將一視窗排序應用程式的一應用程式句柄設為第一句柄的一父視窗句柄。
於一實施例中,處理器10透過句柄去查詢預設識別碼跟前景視窗(例如第一視窗W1)的程序辨識碼是不是一樣的,若一樣,則透過句柄取得此視窗的大小、型態(子視窗或父視窗),處理器10將此些資訊記錄到儲存裝置20中。
於一實施例中,當使用者啟動視窗排列應用程式時, 會將視窗排列應用程式設為父視窗。更具體而言,處理器10設定WiTidy.exe(視窗排列應用程式的程序代碼)的視窗句柄為父視窗,讓整個視窗呈現黑色狀態,其他在父視窗之內的視窗為子視窗。
於一實施例中,若只有一個子視窗,則視窗排列應用程式會將此子視窗配置為全螢幕顯示。
於一實施例中,當有多個螢幕時,視窗排列應用程式可依據事先設定好的一預設選項,選擇主螢幕或延伸螢幕設為父視窗。
於步驟330中,處理器10透過視窗排序應用程式將前景視窗的一第一工具列或一第一網址列TL去除,以產生一第一簡化視窗W1’。
於一實施例中,處理器10透過應用程式介面(Application Programming Interface,API)去除第一視窗W1的第一工具列及/或一第一網址列TL,藉此產生第一簡化視窗W1’。
於一實施例中,處理器10分別將第一視窗W1~第四視窗W4各自的工具列及/或網址列TL透過應用程式介面去除,以產生第一簡化視窗W1’~第四簡化視窗W4’。
於步驟340中,處理器10透過視窗排序應用程式依據第一視窗資料及一第一預設視窗位置,將第一簡化視窗W1’排序於視窗排序應用程式的一視窗中。
請參照第5圖,第5圖係依照本發明一實施例繪示一種在同一視窗呈現簡化視窗之示意圖。第5圖所示,視窗排序應用程式排序此些第一簡化視窗W1’~第四簡化視窗W4’,並將第一簡化視窗W1’~第四簡化視窗W4’透過顯示器30顯示出來。
其中,如上所述,處理器10設定WiTidy.exe(視窗排列應用程式的程序代碼)的視窗句柄為父視窗,讓整個視窗呈現黑色狀態,其他在父視窗之內的視窗為子視窗,因此,於此例中,第一簡化視窗W1’~第四簡化視窗W4’是子視窗,顯示於父視窗中。
藉此,可以達到讓每個第一簡化視窗W1’~第四簡化視窗W4’不保留工具列及/或網址列,可以讓每個Chrome瀏覽器各自以全螢幕的模式在一定的區域中呈現並且排列,也不會造成只有單一個Chrome瀏覽器將佔據整個父視窗大小的情況發生。相較於第1圖,第5圖的畫面沒有了工具列及/網址列,可以使儀表板(dashboard)中的報表更大,更為簡潔且利於使用者觀看。
於一實施例中,第一視窗資料是指儲存裝置20中所儲存對應於第一視窗W1的視窗大小、型態(子視窗或父視窗)、父視窗的句柄。
於一實施例中,請參照第6圖,第6圖係依照本發明一實施例繪示一種在同一視窗呈現簡化視窗之示意圖。於一實施例中,預設視窗位置可以依據視窗的數量事先配置排放位置,於第6圖中,預設視窗位置610是用於排放4個視窗的配置,預設視窗位置620是用於排放6個視窗的配置,預設視窗位置630是用於排放9個視窗的配置。然,本案的配置方式不限於此,預設視窗位置可以依據實作調整。
於一實施例中,第一視窗W1~第四視窗W4的處理方式相同,以第二視窗W2為例,處理器10取得一第二視窗的一第二句柄;取得對應第二視窗W2的一第二程序辨識碼;判斷第二程序辨識碼是否屬於預設識別碼;響應於第二程序辨識碼屬於預設識別碼, 取得第二視窗W2的一第二句柄及一第二視窗資料,並將視窗排序應用程式的應用程式句柄設為第二句柄的父視窗句柄;透過視窗排序應用程式將第二視窗W2的一第二工具列或一第二網址列去除,以產生一第二簡化視窗W2’;以及透過視窗排序應用程式依據第二視窗資料及一第二預設視窗位置,將簡化第二視窗W2’排序於視窗排序應用程式的視窗中。
於一實施例中,視窗排列應用程式取得一螢幕解析度尺寸後,依據第一視窗資料、螢幕解析度尺寸及預設視窗位置,將第一簡化視窗W1排序於視窗排序應用程式的視窗中。
更具體而言,於一實施例中,根據螢幕解析度,以及要分割成為幾個視窗,計算每個視窗的尺寸(寬跟高),再根據設定檔取得預設視窗位置以及後續提及的與視窗資訊相關的資料。由於有了許多關於視窗資訊的資料,可以知道當前的視窗應該要設置多大(例如設置第一簡化視窗W1的寬跟高),再根據設定檔及關於視窗資訊的資料將當前的視窗(例如第一簡化視窗W1)排列到對應的位置。
於一實施例中,視窗排列應用程式取得一螢幕解析度尺寸後,依據所有的視窗資料、螢幕解析度尺寸及預設視窗位置,將所有簡化視窗(例如第一簡化視窗~第四簡化視窗W1~W4)排序於視窗排序應用程式的視窗中。
於一實施例中,處理器10透過一第一統一資源定位符(Uniform Resource Locator,URL)對第一視窗W1定義一第一計時器,第一計時器用以設置一第一時間週期,第一視窗W1依據第一時間週期更新顯示內容。同理,其他視窗(例如第二視窗W2~第 四視窗W4)也可以透過各自的統一資源定位符,以定義各自計時器,計時器用以設置更新內容的時間週期,每個視窗的更新時間週期可以各自依據儀表板上所呈現的資訊做設定。
例如,處理器10透過一第二統一資源定位符對第二視窗W2定義一第二計時器,第二計時器用以設置一第二時間週期,第二視窗W2依據第二時間週期更新顯示內容。於一實施例中,第一時間週期例如為30秒,代表第一視窗W1每30秒更新一次內容,第二時間週期例如為5秒,代表第一視窗W2每5秒更新一次內容。然,本案的配置方式不限於此,每個視窗對應的時間週期可以依據實作調整。
於一實施例中,響應於第一時間週期比第二時間週期先到一更新時間時,第一視窗W1被設定為一最前景視窗,以更新第一視窗。響應於第二時間週期比第一時間週期先到更新時間時,第二視窗被設定為最前景視窗,以更新第二視窗。
於一實施例中,響應於開啟視窗排列應用程式後,處理器10會開啟一控制介面。如第7圖所示,第7圖係依照本發明一實施例繪示一種控制介面700之示意圖。
控制介面700的標題列寫著視窗排列應用程式名為WiTidy App。其中,控制介面700包含一全螢幕按鍵(Full screen)、複數個視窗排列樣板選項(例如Google、Test 1~4、Group Name1、Group Name2及Google Search)及各自對應此些視窗排列樣板選項的一視窗列表,視窗列表中包含複數個當前簡化視窗,此些當前化視窗各自對應一當前統一資源定位符或一執行檔,例如,點選Google Search,視窗列表會列出Google Search這個樣版中 包含的當前簡化視窗有Test 1~Test 4,沒有被點選的視窗排列樣板選項(例如Group Name1)的按鍵,會預設顯示“Show up”,代表是可以被點選以展開對應的當前簡化視窗。
另一方面,被點選的視窗排列樣板選項(例如Google Search)的按鍵,則從“Show up”更改成顯示“Close”,代表可以同時將此四個當前簡化視窗有Test 1~Test 4一併關閉。此外,透過點選當前簡化視窗有Test 1~Test 4的其中至一者(例如Test 1),在按下全螢幕按鍵“Full screen”後,則命名為Test 1的當前簡化視窗會被配置為以最大化或全螢幕顯示,其他當前簡化視窗以最小化顯示(例如命名為Test 2~Test 4的當前簡化視窗)。
於一實施例中,命名為Test 1的當前簡化視窗會被配置為以最大化或全螢幕顯示時,全螢幕按鍵“Full screen”改成回復按鍵,響應於按下回復按鍵後,視窗排列應用程式促使此些當前簡化視窗(例如Test 1~Test 4)依據預設視窗位置(例如預設視窗位置610的配置),排序於視窗排序應用程式的視窗中。
於一實施例中,請參閱8圖,第8圖係依照本發明一實施例繪示一種多個當前簡化視窗與控制介面之示意圖。此些當前簡化視窗(例如Test 1~Test 4)與控制介面700可以在同一個父視窗中。於一實施例中,控制介面700可以被自由拖曳到適當的位置。
於一實施例中,響應於開啟視窗排列應用程式後,處理器10會開啟一控制介面,並呼叫視窗排序應用程式的一應用程式句柄。如第9圖所示,第9圖係依照本發明一實施例繪示一種設定紀錄程序辨識碼之方法900之流程圖。
於步驟910中,處理器10向作業系統註冊前景視窗出 現的事件發生時,執行視窗排列方法300的流程。
於步驟915中,處理器10從一設定檔載入關聯於子視窗的設定。
接著,處理器10可從設定檔載入url或指定路徑的執行檔,並且可透過控制介面700作一些設定,例如將此前景視窗的網址顯示出來於控制介面700,或於控制介面700點選“Show up”...等操作。
於步驟920中,處理器10載入並開啟設定檔中的網址(uniform resource locator,url)或指定路徑的執行檔,並進一步判斷副檔名是否為“.exe”結尾。
於一實施例中,處理器10響應於副檔名為“.exe”結尾,則進入步驟930,處理器10響應於副檔名不為“.exe”結尾,代表設定檔紀錄的是網址,則進入步驟940,以瀏覽器開啟此網址。
於一實施例中,處理器10響應於設定檔中的所有網址或指定路徑都檢查過,則進入結束,代表結束此設定與紀錄程序辨識碼的方法。
於步驟930中,處理器10將指定路徑的執行檔的程序辨識碼記錄於儲存裝置20中。
換言之,處理器10響應於處理器10判斷此路徑的副檔名是執行檔(例如,“.exe”結尾),則此路徑例如為一執行檔,將此路徑的執行檔開啟為前景視窗,此前景視窗例如為小畫家,處理器10將前景視窗的程序辨識碼記錄於儲存裝置20中,並作為預設識別碼。
於步驟940中,處理器10啟動瀏覽器,並將此網址的 程序辨識碼記錄於儲存裝置20中。
於一實施例中,瀏覽器可以是指Chrome、IE、Firefox、Microsoft Edge、Opera、Safari...等等,不限於此。
換言之,於此步驟中,處理器10透過檢查設定檔的網址,得知此網址不是執行檔,則基於網址開啟Chrome瀏覽器,處理器10取得關聯於網址的瀏覽器視窗的程序辨識碼,並將此程序辨識碼記錄於儲存裝置20中,並作為預設識別碼。
綜上,視窗排列方法及視窗排列方法可以自動化的找出開啟且顯示於顯示器的瀏覽器或視窗,並且能自動化地排列瀏覽器或視窗,且可以針對排列的好的瀏覽器,達到自動更新內容的功效。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明。在不脫離本發明之精神和範圍內,所為之更動與潤飾,均屬於本發明之專利保護範圍。關於本發明所界定之保護範圍請參考所附之申請專利範圍。
TL:工具列跟網址列
W1:第一視窗
W2:第二視窗
W3:第三視窗
W4:第四視窗
100:視窗排列系統
10:處理器
20:儲存裝置
30:顯示器
300:視窗排列方法
310~340,910~940:步驟
W1’:第一簡化視窗
W2’:第二簡化視窗
W3’:第三簡化視窗
W4’:第四簡化視窗
610~630:預設視窗位置
700:控制介面
900:設定紀錄程序辨識碼之方法
第1圖係依照本發明一實施例繪示一種在同一視窗開啟多個瀏覽器之示意圖。 第2圖係根據本發明之一實施例繪示一種視窗排列系統之示意圖。 第3圖係根據本發明之一實施例繪示一種視窗排列方法之流程圖。 第4圖係依照本發明一實施例繪示一種在開啟多個瀏覽器的工作管理員介面之示意圖。 第5圖係依照本發明一實施例繪示一種在同一視窗呈現簡化視窗之示意圖。 第6圖係依照本發明一實施例繪示一種在同一視窗呈現簡化視窗之示意圖。 第7圖係依照本發明一實施例繪示一種控制介面之示意圖。 第8圖係依照本發明一實施例繪示一種多個當前簡化視窗與控制介面之示意圖。 第9圖係依照本發明一實施例繪示一種設定並紀錄程序辨識碼之方法之流程圖。
300:視窗排列方法
310~340:步驟

Claims (20)

  1. 一種視窗排列方法,包含: 取得一前景視窗的一第一程序辨識碼; 判斷該第一程序辨識碼是否屬於一預設識別碼; 響應於該第一程序辨識碼屬於該預設識別碼,取得該前景視窗的一第一句柄及一第一視窗資料,並將一視窗排序應用程式的一應用程式句柄設為該第一句柄的一父視窗句柄; 透過該視窗排序應用程式將該前景視窗的一第一工具列或一第一網址列去除,以產生一第一簡化視窗;以及 透過該視窗排序應用程式依據該第一視窗資料及一第一預設視窗位置,將該第一簡化視窗排序於該視窗排序應用程式的一視窗中。
  2. 如請求項1之視窗排列方法,其中,將該視窗排序應用程式的該應用程式句柄設為該第一句柄的該父視窗句柄,代表該前景視窗為該視窗排序應用程式的該視窗的一子視窗,該前景視窗顯示於該視窗排序應用程式的該視窗中。
  3. 如請求項1之視窗排列方法,更包含: 取得一第二前景視窗的一第二程序辨識碼; 判斷該第二程序辨識碼是否屬於該預設識別碼; 響應於該第二程序辨識碼屬於該預設識別碼,取得該第二前景視窗的一第二句柄及一第二視窗資料,並將該視窗排序應用程式的該應用程式句柄設為該第二句柄的該父視窗句柄; 透過該視窗排序應用程式將該第二前景視窗的一第二工具列或一第二網址列去除,以產生一第二簡化視窗;以及透過該視窗排序應用程式依據該第二視窗資料及一第二預設視窗位置,將該第二簡化視窗排序於該視窗排序應用程式的該視窗中;其中,將該視窗排序應用程式的該應用程式句柄設為該第二句柄的該父視窗句柄,代表該第二前景視窗為該視窗排序應用程式的該視窗的一子視窗,該第二前景視窗顯示於該視窗排序應用程式的該視窗中。
  4. 如請求項1之視窗排列方法,更包含:透過一第一統一資源定位符對該第一簡化視窗定義一第一計時器,該第一計時器用以設置一第一時間週期,該第一簡化視窗依據該第一時間週期更新顯示內容;透過一第二統一資源定位符對一第二簡化視窗定義一第二計時器,該第二計時器用以設置一第二時間週期,該第二簡化視窗依據該第二時間週期更新顯示內容。
  5. 如請求項4之視窗排列方法,其中響應於該第一時間週期比該第二時間週期先到一更新時間時,該第一簡化視窗被設定為一最前景視窗,以更新該第一簡化視窗;其中響應於該第二時間週期比該第一時間週期先到該更新時間時,該第二簡化視窗被設定為該最前景視窗,以更新該第二簡化視窗。
  6. 如請求項1之視窗排列方法,其中在取得該前景視窗的該第一程序辨識碼的步驟之前,更包含:響應於作業系統註冊該前景視窗出現的事件,從一設定檔載入關聯於一子視窗的設定。
  7. 如請求項6之視窗排列方法,更包含:載入並開啟該設定檔中的一網址(uniform resource locator,url)或一指定路徑的一執行檔,並判斷該指定路徑的一副檔名是否為“.exe”結尾;響應於判斷該副檔名為“.exe”結尾,則將該指定路徑的該執行檔的程序辨識碼記錄於儲存裝置中,並作為該預設識別碼;響應於判斷該副檔名不為“.exe”結尾,則啟動一瀏覽器,並將關聯於該網址的瀏覽器視窗的程序辨識碼記錄於該儲存裝置中,並作為該預設識別碼。
  8. 如請求項1之視窗排列方法,其中響應於開啟該視窗排列應用程式後,更包含:開啟一控制介面;其中,該控制介面包含一全螢幕按鍵、複數個視窗排列樣板選項及各自對應該些視窗排列樣板選項的一視窗列表,該視窗列表中包含複數個當前簡化視窗,該些當前簡化視窗各自對應一當前統一資源定位符或一執行檔;以及透過點選該些當前簡化視窗之一者,並按下該全螢幕按鍵後,該些當前簡化視窗之一者以最大化或全螢幕顯示之,其他當前簡化視窗以最小化顯示之。
  9. 如請求項8之視窗排列方法,其中當該些當前簡化視窗之一者以最大化或全螢幕顯示時,該全螢幕按鍵會更改成一回復按鍵,該視窗排列方法更包含:響應於按下該回復按鍵後,該視窗排列應用程式促使該些當前簡化視窗依據一預設視窗位置,排序於該視窗排序應用程式的該視窗中。
  10. 如請求項1之視窗排列方法,其中該視窗排列應用程式取得一螢幕解析度尺寸後,依據該第一視窗資料、該螢幕解析度尺寸及該第一預設視窗位置,將該第一簡化視窗排序於該視窗排序應用程式的該視窗中。
  11. 一種視窗排列系統,包含: 一處理器;以及 一儲存裝置,該處理器用以存取該儲存裝置所儲存之視窗排列應用程式,以執行該視窗排列應用程式,其中該處理器執行: 取得一前景視窗的一第一程序辨識碼; 判斷該第一程序辨識碼是否屬於一預設識別碼; 響應於該第一程序辨識碼屬於該預設識別碼,取得該前景視窗的一第一句柄及一第一視窗資料,並將一視窗排序應用程式的一應用程式句柄設為該第一句柄的一父視窗句柄; 透過該視窗排序應用程式將該前景視窗的一第一工具列或一第一網址列去除,以產生一第一簡化視窗;以及 透過該視窗排序應用程式依據該第一視窗資料及一第一預設視窗位置,將該第一簡化視窗排序於該視窗排序應用程式的一視窗中。
  12. 如請求項11之視窗排列系統,其中,該處理器將該視窗排序應用程式的該應用程式句柄設為該第一句柄的該父視窗句柄,代表該前景視窗為該視窗排序應用程式的該視窗的一子視窗,該處理器將該前景視窗顯示於該視窗排序應用程式的該視窗中。
  13. 如請求項11之視窗排列系統,其中該處理器執行: 取得一第二前景視窗的一第二程序辨識碼; 判斷該第二程序辨識碼是否屬於該預設識別碼; 響應於該第二程序辨識碼屬於該預設識別碼,取得該第二前景視窗的一第二句柄及一第二視窗資料,並將該視窗排序應用程式的該應用程式句柄設為該第二句柄的該父視窗句柄; 透過該視窗排序應用程式將該第二前景視窗的一第二工具列或一第二網址列去除,以產生一第二簡化視窗;以及 透過該視窗排序應用程式依據該第二視窗資料及一第二預設視窗位置,將該第二簡化視窗排序於該視窗排序應用程式的該視窗中; 其中,將該視窗排序應用程式的該應用程式句柄設為該第二句柄的該父視窗句柄,代表該第二前景視窗為該視窗排序應用程式的該視窗的一子視窗,該第二前景視窗顯示於該視窗排序應用程式的該視窗中。
  14. 如請求項11之視窗排列系統,其中該處理器執行: 透過一第一統一資源定位符對該第一簡化視窗定義一第一計時器,該第一計時器用以設置一第一時間週期,該第一簡化視窗依據該第一時間週期更新顯示內容; 透過一第二統一資源定位符對一第二簡化視窗定義一第二計時器,該第二計時器用以設置一第二時間週期,該第二簡化視窗依據該第二時間週期更新顯示內容。
  15. 如請求項14之視窗排列系統,其中響應於該第一時間週期比該第二時間週期先到一更新時間時,該第一簡化視窗被設定為一最前景視窗,以更新該第一簡化視窗;其中響應於該第二時間週期比該第一時間週期先到該更新時間時,該第二簡化視窗被設定為該最前景視窗,以更新該第二簡化視窗。
  16. 如請求項11之視窗排列系統,其中該處理器取得該前景視窗的該第一程序辨識碼之前,響應於作業系統註冊該前景視窗出現的事件,該處理器從一設定檔載入關聯於一子視窗的設定。
  17. 如請求項16之視窗排列系統,其中該處理器執行: 載入並開啟該設定檔中的一網址(uniform resource locator,url)或一指定路徑的一執行檔,並判斷該指定路徑的一副檔名是否為“.exe”結尾; 響應於判斷該副檔名為“.exe”結尾,則將該指定路徑的該執行檔的程序辨識碼記錄於該儲存裝置中,並作為該預設識別碼; 響應於判斷該副檔名不為“.exe”結尾,則啟動一瀏覽器,並將關聯於該網址的瀏覽器視窗的程序辨識碼記錄於該儲存裝置中,並作為該預設識別碼。
  18. 如請求項11之視窗排列系統,其中響應於開啟該視窗排列應用程式後,該處理器執行: 開啟一控制介面;其中,該控制介面包含一全螢幕按鍵、複數個視窗排列樣板選項及各自對應該些視窗排列樣板選項的一視窗列表,該視窗列表中包含複數個當前簡化視窗,該些當前簡化視窗各自對應一當前統一資源定位符或一執行檔;以及 透過點選該些當前簡化視窗之一者,並按下該全螢幕按鍵後,該些當前簡化視窗之一者以最大化或全螢幕顯示之,其他當前簡化視窗以最小化顯示之。
  19. 如請求項18之視窗排列系統,其中當該些當前簡化視窗之一者以最大化或全螢幕顯示時,該全螢幕按鍵會更改成一回復按鍵,其中該處理器執行: 響應於按下該回復按鍵後,該視窗排列應用程式促使該些當前簡化視窗依據一預設視窗位置,排序於該視窗排序應用程式的該視窗中。
  20. 如請求項11之視窗排列系統,其中該視窗排列應用程式取得一螢幕解析度尺寸後,依據該第一視窗資料、該螢幕解析度尺寸及該第一預設視窗位置,將該第一簡化視窗排序於該視窗排序應用程式的該視窗中。
TW111109607A 2022-03-16 2022-03-16 視窗排列方法及視窗排列系統 TWI812072B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW111109607A TWI812072B (zh) 2022-03-16 2022-03-16 視窗排列方法及視窗排列系統
CN202210341585.8A CN116795244A (zh) 2022-03-16 2022-04-02 窗口排列方法及窗口排列系统
US17/977,993 US20230297210A1 (en) 2022-03-16 2022-10-31 Window arrangement method and window arrangement system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW111109607A TWI812072B (zh) 2022-03-16 2022-03-16 視窗排列方法及視窗排列系統

Publications (2)

Publication Number Publication Date
TWI812072B true TWI812072B (zh) 2023-08-11
TW202338588A TW202338588A (zh) 2023-10-01

Family

ID=88033308

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111109607A TWI812072B (zh) 2022-03-16 2022-03-16 視窗排列方法及視窗排列系統

Country Status (3)

Country Link
US (1) US20230297210A1 (zh)
CN (1) CN116795244A (zh)
TW (1) TWI812072B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410803A (zh) * 2006-01-24 2009-04-15 思杰系统有限公司 用于提供对计算环境的访问的方法和系统
US20150244812A1 (en) * 2014-02-26 2015-08-27 Avaya Inc. System and method for binding a virtual desktop infrastructure host and media soft client together
US20190317558A1 (en) * 2016-09-23 2019-10-17 Apple Inc. Dynamic Function Row Customization
TWI703468B (zh) * 2018-08-22 2020-09-01 奧義智慧科技股份有限公司 用於產生可疑事件時序圖的可疑事件研判裝置與相關的電腦程式產品

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819055A (en) * 1994-12-13 1998-10-06 Microsoft Corporation Method and apparatus for docking re-sizeable interface boxes
GB2301757B (en) * 1995-06-01 2000-02-02 Ibm Graphical user interface
US6008809A (en) * 1997-09-22 1999-12-28 International Business Machines Corporation Apparatus and method for viewing multiple windows within a dynamic window
US20050131992A1 (en) * 2003-12-11 2005-06-16 Eric Goldstein System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US20050278698A1 (en) * 2003-02-03 2005-12-15 John Verco Multi-window based graphical user interface (GUI) for web applications
US7640502B2 (en) * 2004-10-01 2009-12-29 Microsoft Corporation Presentation facilitation
US20060224951A1 (en) * 2005-03-30 2006-10-05 Yahoo! Inc. Multiple window browser interface and system and method of generating multiple window browser interface
US20070162864A1 (en) * 2006-01-10 2007-07-12 International Business Machines Corp. User-directed repartitioning of content on tab-based interfaces
US8381127B2 (en) * 2006-02-02 2013-02-19 Scenera Technologies, Llc Methods, systems, and computer program products for displaying windows on a graphical user interface based on relative priorities associated with the windows
US20080115081A1 (en) * 2006-11-09 2008-05-15 Microsoft Corporation Enhanced windows management feature
US8255824B2 (en) * 2007-01-30 2012-08-28 Oracle International Corporation Toolbar/sidebar browser extension
US20080229232A1 (en) * 2007-03-16 2008-09-18 Apple Inc. Full screen editing of visual media
US20090307627A1 (en) * 2008-06-05 2009-12-10 Honeywell International Inc. Systems and methods for providing an integrated set of display screen windows
TWI386843B (zh) * 2008-07-03 2013-02-21 Wistron Corp 螢幕顯示區分割方法、螢幕顯示區分割系統,及電腦程式產品
US8819585B2 (en) * 2008-10-27 2014-08-26 Microsoft Corporation Child window surfacing and management
US8713465B1 (en) * 2009-10-13 2014-04-29 Google Inc. Tab visibility
US9529517B2 (en) * 2009-10-13 2016-12-27 Google Inc. Movable information panels
WO2011134078A1 (en) * 2010-04-26 2011-11-03 Research In Motion Limited Portable electronic device and method of controlling same
US10152192B2 (en) * 2011-02-21 2018-12-11 Apple Inc. Scaling application windows in one or more workspaces in a user interface
US20120260192A1 (en) * 2011-04-11 2012-10-11 Detweiler Sean D Automated browser mode based on user and access point
US9354899B2 (en) * 2011-04-18 2016-05-31 Google Inc. Simultaneous display of multiple applications using panels
US9201709B2 (en) * 2011-05-20 2015-12-01 Citrix Systems, Inc. Shell integration for an application executing remotely on a server
US10417018B2 (en) * 2011-05-27 2019-09-17 Microsoft Technology Licensing, Llc Navigation of immersive and desktop shells
US9189134B2 (en) * 2011-09-30 2015-11-17 Bmc Software, Inc. Display window with multi-layer, parallel tab display
KR101957173B1 (ko) * 2012-09-24 2019-03-12 삼성전자 주식회사 터치 디바이스에서 멀티윈도우 제공 방법 및 장치
US20140298154A1 (en) * 2013-03-29 2014-10-02 Xiaopeng He Method and framework for content viewer integrations
KR102153366B1 (ko) * 2013-08-30 2020-10-15 삼성전자 주식회사 전자 기기의 화면 전환 방법 및 장치
EP3680762A4 (en) * 2017-10-31 2020-10-07 Huawei Technologies Co., Ltd. MANAGEMENT OF A VARIETY OF FREE WINDOWS IN A PULL-DOWN MENU OF A NOTIFICATION BAR
US11494209B2 (en) * 2019-09-04 2022-11-08 Hiperwall, Inc. Multi-active browser application
US11200072B2 (en) * 2019-10-01 2021-12-14 Microsoft Technology Licensing, Llc User interface adaptations based on inferred content occlusion and user intent
CN117873357A (zh) * 2020-04-27 2024-04-12 华为技术有限公司 应用窗口的管理方法、终端设备及计算机可读存储介质
KR20220016727A (ko) * 2020-08-03 2022-02-10 삼성전자주식회사 다중 윈도우 이미지 캡쳐 방법 및 이를 위한 전자 장치
CN114237779A (zh) * 2020-09-09 2022-03-25 华为技术有限公司 一种显示窗口的方法、切换窗口的方法、电子设备和系统
US20220397995A1 (en) * 2021-06-15 2022-12-15 Microsoft Technology Licensing, Llc Dashboard explore mode

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410803A (zh) * 2006-01-24 2009-04-15 思杰系统有限公司 用于提供对计算环境的访问的方法和系统
US20150244812A1 (en) * 2014-02-26 2015-08-27 Avaya Inc. System and method for binding a virtual desktop infrastructure host and media soft client together
US20190317558A1 (en) * 2016-09-23 2019-10-17 Apple Inc. Dynamic Function Row Customization
TWI703468B (zh) * 2018-08-22 2020-09-01 奧義智慧科技股份有限公司 用於產生可疑事件時序圖的可疑事件研判裝置與相關的電腦程式產品

Also Published As

Publication number Publication date
US20230297210A1 (en) 2023-09-21
TW202338588A (zh) 2023-10-01
CN116795244A (zh) 2023-09-22

Similar Documents

Publication Publication Date Title
US20220121410A1 (en) Technology add-on interface
CN107193739B (zh) 一种黑盒回归测试方法
US20210055916A1 (en) Single-page web application builder system and method based on a finite-state machine
US7930636B2 (en) Systems, methods and computer products to automatically complete a GUI task
US7421683B2 (en) Method for the use of information in an auxiliary data system in relation to automated testing of graphical user interface based applications
US20210042341A1 (en) User interface search tool for identifying and summarizing data
US8726240B2 (en) Capturing replayable information at software defect locations in a multi-tenant environment
US20180293327A1 (en) Locating and categorizing data using inverted indexes
US8776023B2 (en) Software testing
US7665068B2 (en) Methods and systems for testing software applications
US8875103B2 (en) Method of testing multiple language versions of a software system using one test script
US9367383B2 (en) Tracing and discovering the origins and genealogy of install errors
US20110283266A1 (en) Software Performance Profiling in a Multi-Tenant Environment
JP5942009B1 (ja) ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム
KR20170052668A (ko) 데이터 구동 테스트 프레임워크
US20180293304A1 (en) Sampling data using inverted indexes in response to grouping selection
US20220350857A1 (en) Methods and systems for browser extension used to generate relative xpath, absolute xpath and/or css selectors
CN107038117B (zh) 一种基于事件处理函数间定义-引用的web自动化测试方法
TWI812072B (zh) 視窗排列方法及視窗排列系統
JP5998239B1 (ja) ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム
US20230131682A1 (en) Facilitated live analysis of screen content
JP5998238B1 (ja) ソフトウェア試験装置、ソフトウェア試験方法及びソフトウェア試験用プログラム
US8484615B2 (en) Software framework to build an executable scheme in a GUI environment
US8224838B2 (en) Database search method, program, and apparatus
CN105359111A (zh) 用户界面检查方法、设备及程序