創(chuàng)建用戶界面的方法
【專利摘要】本發(fā)明公開了操作具有控制屏幕以便提供程序控制的數(shù)據(jù)處理系統(tǒng)的方法。提供第一和第二程序圖形用戶界面(GUI)以及運(yùn)行時庫。該第一程序GUI包括第一GUI描述和對輸入到該第一程序GUI的數(shù)據(jù)或從該第一程序GUI輸出的數(shù)據(jù)進(jìn)行操作的第一方法。該第二程序GUI包括第二GUI描述和對輸入到該第二程序GUI的數(shù)據(jù)或從該第二程序GUI輸出的數(shù)據(jù)進(jìn)行操作的第二方法。該運(yùn)行時庫包括第一和第二方法。該數(shù)據(jù)處理系統(tǒng)組合第一GUI描述和第二GUI描述,以便不重新編譯運(yùn)行時庫地提供復(fù)合GUI。
【專利說明】創(chuàng)建用戶界面的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及創(chuàng)建用戶界面的方法。
【背景技術(shù)】
[0002] 基于計算機(jī)的控制系統(tǒng)用在多種多樣的狀況下。例如,現(xiàn)代測量儀器經(jīng)常使用通 用計算機(jī)來構(gòu)建,以便控制收集,處理和向用戶顯示相關(guān)信息的各種輸入、輸出和計算模 塊。用戶與儀器之間的用戶界面通常是顯示數(shù)據(jù)和使用戶可以經(jīng)由鍵盤和/或定位設(shè)備輸 入指定輸入和所希望輸出的命令的某種形式圖形用戶界面。
[0003] 在一些"合成"儀器中,儀器包括經(jīng)由可以包括互聯(lián)網(wǎng)和無線鏈路的網(wǎng)絡(luò)與控制數(shù) 據(jù)處理系統(tǒng)連接的物理部分。實(shí)際控制程序運(yùn)行在某個遠(yuǎn)程地點(diǎn)上的傳統(tǒng)數(shù)據(jù)處理系統(tǒng)上 或在諸如智能電話、平板電腦等的多種手持設(shè)備的某一種上。每種設(shè)備都存在設(shè)備的計算 能力及其顯示屏的尺寸選成的不同顯示局限性。因此,為每種可能控制設(shè)備提供圖形用戶 界面的任務(wù)給人們帶來嚴(yán)峻的挑戰(zhàn)。
[0004] 控制計算機(jī)程序、真實(shí)世界的機(jī)械或電氣系統(tǒng)、或儀器的圖形用戶界面(GUI)通常 使用市場供應(yīng)的編程環(huán)境來創(chuàng)建。該編程環(huán)境提供可用組件的列表,編程人員從這個列表 中選擇組件,并將所涉及的組件安排在窗體上,以定義圖形用戶界面的布局。用戶然后將規(guī) 定組件的交互和輸入數(shù)據(jù)源的代碼寫成程序。最后,將程序編譯成裝載到主計算機(jī)上的執(zhí) 行程序。一旦創(chuàng)建了執(zhí)行程序,通常必須返回到編程環(huán)境,對源代碼和布局文件加以改變, 然后重新編譯程序?qū)Ψ浅绦蜷_發(fā)人員所預(yù)期的圖形用戶界面加以改變。
[0005] 新用戶界面通常使用編程環(huán)境從頭開始創(chuàng)建,或從以前的設(shè)計中復(fù)制源代碼并為 新應(yīng)用修改該代碼來創(chuàng)建。這個過程是冗長乏味的,耗時的,并且易于出錯的。另外,該過 程需要在編程環(huán)境和相關(guān)計算機(jī)語言兩者下受過訓(xùn)練的編程人員。儀器或程序的最終用戶 通常缺乏這樣的技能。因此,如果圖形用戶界面的用戶想創(chuàng)建新圖形用戶界面,則該用戶通 常必須與編程人員協(xié)作。另外,在新圖形用戶界面的概念化與其以最終用戶可以利用的形 式實(shí)現(xiàn)之間存在顯著的時間延遲。因此,對創(chuàng)建新圖形用戶界面和修改現(xiàn)有圖形用戶界面 有抵觸。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明包括操作具有控制屏幕以便提供程序控制的數(shù)據(jù)處理系統(tǒng)的方法。提供第 一和第二程序⑶I以及運(yùn)行時庫(runtime library)。該第一程序⑶I包括第一⑶I描述 和對輸入到第一程序GUI的數(shù)據(jù)或從第一程序GUI輸出的數(shù)據(jù)進(jìn)行操作的第一方法。該第 二程序⑶I包括第二⑶I描述和對輸入到那個第二程序⑶I的數(shù)據(jù)或從那個第二程序⑶I 輸出的數(shù)據(jù)進(jìn)行操作的第二方法。該運(yùn)行時庫包括第一和第二方法。該數(shù)據(jù)處理系統(tǒng)組合 第一 GUI描述和第二GUI描述,以便不重新編譯運(yùn)行時庫地提供復(fù)合GUI。
[0007] 在本發(fā)明的一個方面,第一 GW具有來自數(shù)據(jù)處理系統(tǒng)的外部源的信號輸入或向 數(shù)據(jù)處理系統(tǒng)的外部源提供輸出,復(fù)合GUI也具有信號輸入和/或提供那些輸出。
[0008] 在本發(fā)明的另一個方面,該數(shù)據(jù)處理系統(tǒng)通過顯示第一⑶I和第二⑶I組合第一 ⑶I描述和第二⑶I描述,并對用戶選擇第一⑶I和將第一⑶I拖放到第二⑶I作出響應(yīng)。
[0009] 在本發(fā)明的又一個方面,第二⑶I占據(jù)控制屏幕上的第一區(qū)域,該數(shù)據(jù)處理系統(tǒng) 自動改變第一⑶I的尺寸,以便第一⑶I和第二⑶I都占據(jù)第一區(qū)域。
[0010] 在本發(fā)明的再一個方面,第一⑶I包括通過小部件顯示區(qū)表征的小部件 (widget),并且該小部件響應(yīng)第一⑶I描述和第二⑶I描述的組合自動改變小部件顯示區(qū) 的尺寸。
【專利附圖】
【附圖說明】
[0011] 圖1和2例示了為了觀看和/或控制儀器已經(jīng)構(gòu)建好的兩個⑶I ;
[0012] 圖3例示了從圖1和2中的⑶I中創(chuàng)建的復(fù)合⑶I ;
[0013] 圖4例示了各種元素被重新排列和尺寸重新改變之后顯示在圖3中的復(fù)合⑶I ; 以及
[0014] 圖5A - 5C例示了當(dāng)可用顯示區(qū)對于第一窗體來說過于有限時改變窗體的圖形元 素。
【具體實(shí)施方式】
[0015] 在本發(fā)明中,通過提供不需要編程人員和傳統(tǒng)編程環(huán)境來修改現(xiàn)有控制程序或通 過組合現(xiàn)有程序的一些部分創(chuàng)建新程序的系統(tǒng),顯著簡化了為儀器提供的任務(wù)。這顯 著減少了為儀器創(chuàng)建要運(yùn)行在不同控制數(shù)據(jù)處理系統(tǒng)上的多個GW所需的工作。
[0016] 現(xiàn)在參照圖1和2,圖1和2例示了為了觀看和/或控制儀器已經(jīng)構(gòu)建好的兩個 GUI。在本例中監(jiān)視的系統(tǒng)包括測量特定組件中的電流的探針和測量系統(tǒng)輸出的電壓的探 針。圖1例示了監(jiān)視電流和輸出電壓的GUI。GUI40包括作為時間的函數(shù)顯示電流的圖形 顯示組件41、和示出電壓的當(dāng)前值的條狀圖形42。該系統(tǒng)還包括通過風(fēng)扇速度、風(fēng)扇電壓 和風(fēng)扇電流表征的風(fēng)扇。圖2例示了監(jiān)視風(fēng)扇性質(zhì)的單獨(dú)GUI。尤其,風(fēng)扇GUI50包括作為 時間的函數(shù)顯示風(fēng)扇速度的圖形顯示組件51、和兩個條狀圖形。條狀圖形52示出了當(dāng)前時 間風(fēng)扇電壓的數(shù)值,條狀圖形53示出了當(dāng)前時間風(fēng)扇電流的數(shù)值。
[0017] 上面討論的兩個⑶I的用戶想構(gòu)建包括這些⑶I兩者的特征的第三⑶I。在本發(fā) 明中,用戶將兩個GW顯示在相同屏幕上,并將顯示在圖2中的CTI拖放到顯示在圖1中的 ⑶I中,以創(chuàng)建顯示在圖3中的組合⑶160。
[0018] 為了簡化如下討論,將組合形成新⑶I的兩個⑶I稱為分⑶I。將組合兩個分⑶I 所得的⑶I稱為復(fù)合⑶I。復(fù)合⑶I可以是全新⑶I,或像上面例子中的情況那樣,是⑶I 之一的擴(kuò)增形式。
[0019] 每個⑶I可以視作具有通常用像XML那樣的語言編寫的界面定義組件、和包括定 義在界面定義組件中的組件使用的各種方法的運(yùn)行時組件。運(yùn)行時系統(tǒng)還包括在運(yùn)行時解 釋界面定義組件,以便提供這些方法用于創(chuàng)建GUI和執(zhí)行與那個GUI相聯(lián)系的各種功能的 數(shù)據(jù)的解釋器。本發(fā)明基于如下觀察:通過合并分GUI的界面定義組件以及使每個GUI的 運(yùn)行時組件包括在復(fù)合GUI的運(yùn)行時組件中,可以組合具有這種組織的兩個分GUI來提供 見合GUI。
[0020] 在本發(fā)明的一個方面,各種⑶I的運(yùn)行時組件包括在為感興趣的應(yīng)用的所有可能 ⑶I服務(wù)的運(yùn)行時庫中,因此,只需合并界面定義組件來提供復(fù)合⑶I。如果如下面所更詳 細(xì)討論,兩個分GUI在組合復(fù)合GUI的時候正在運(yùn)行,則即使兩個GUI不共享單個運(yùn)行時 庫,運(yùn)行時環(huán)境在存儲器中也將具有所有必要庫例程??梢詫蓚€單獨(dú)運(yùn)行時庫視作分兩 個部分裝載到存儲器中的單個庫。
[0021] 通常,⑶I由許多組件個體構(gòu)成。這些組件的一些在⑶I中具有可視表示。在如 下討論中將具有可視表示的組件稱為小部件。例如,表示示波器的小部件在GUI中具有看 起來像示波器屏幕的可視表示。圖形顯示組件41和51是作為時間的函數(shù)提供數(shù)量的顯示 的小部件的例子。條狀圖形42, 52和53也是小部件的例子。
[0022] 生成⑶I的底層控制應(yīng)用程序也可以包括在⑶I中沒有可視表示的組件。例如, 將信號轉(zhuǎn)換成加以處理向示波器小部件提供輸入的數(shù)字流的模擬-數(shù)字轉(zhuǎn)換器不是通常 為儀器控制程序顯示在GUI中的組件,因此,不是這種定義下的小部件。
[0023] 在一般情況下,一個小部件具有與該小部件提供的處理相聯(lián)系的一種或多種方 法、輸入、輸出、和GUI顯示組件。該顯示組件取決于在用像XML那樣的語言編寫的運(yùn)行時 文件中提供的參數(shù)。在如下討論中將這個運(yùn)行時文件中決定小部件的外觀和行為的條目稱 為運(yùn)行時小部件外觀輸入。小部件的實(shí)際地點(diǎn)和外觀通過運(yùn)行時庫中使用運(yùn)行時小部件外 觀輸入的方法來控制。解釋器在運(yùn)行時對這個文件進(jìn)行操作,以便向每個小部件提供有關(guān) 小部件在中顯示自身的地方的信息。
[0024] 每個分⑶I包括對于構(gòu)成那個⑶I的各種小部件包含顯示組件的界面定義組件。 運(yùn)行時界面定義組件包括小部件外觀輸入,通常用像XML那樣的說明性語言編寫。為了合 并兩個⑶I,必須合并⑶I的⑶I顯示定義組件,以便為復(fù)合⑶I提供⑶I顯示定義組件。 如果運(yùn)行時庫已經(jīng)包括在兩個分⑶I中進(jìn)行處理所需的所有方法,則分⑶I將不會變更運(yùn) 行時庫地正確起作用。
[0025] 為了合并兩個⑶I,必須變更至少一個⑶I中各種組件的位置。另外,必須縮小可 用于每個⑶I的顯示空間,因?yàn)橄嗤@示屏現(xiàn)在必須容納兩個GW。在本發(fā)明的一個方面, 合并兩個GUI的編輯器使用戶可以彼此相對地放置兩個GUI,并定義可用于每個GUI的空 間。這是合并兩個GUI的最簡單形式。如下面所更詳細(xì)說明,在GUI中放置小部件的其它 形式可以在復(fù)合GUI的外觀方面提供更大靈活性。
[0026] 在一個實(shí)施例中,每個分⑶I生成當(dāng)作單個圖像來對待的可視顯示。在運(yùn)行時重 新采樣或重新繪制該圖像,以便適合復(fù)合GUI中那個分GUI的可用空間。這是用于生成 GUI60的方法。雖然這個實(shí)施例的實(shí)現(xiàn)相對較直截了當(dāng),但如果圖像具有相當(dāng)大的空白區(qū), 則結(jié)果可能未達(dá)到最佳,因?yàn)檫@個區(qū)域被犧牲掉,以便在顯示器中為小部件個體提供更大 空間。更進(jìn)一步,復(fù)合GUI中小部件的排列是固定的,因此,不能彼此相對移動來提供更有 意義的排列。
[0027] 在本發(fā)明的另一個方面,響應(yīng)顯示器中每個小部件的可用空間變更與那個小部件 相聯(lián)系的圖像。用于移動GUI的編輯器還使GUI內(nèi)的小部件個體可以相對于GUI中的其它 小部件地移動位置。由于在編輯過程中不變更小部件的輸入和輸出,所以只需變更復(fù)合⑶I 的界面定義組件中與小部件的位置有關(guān)的信息。
[0028] 在本發(fā)明的另一個方面,構(gòu)成的小部件對于它們的顯示組件沒有固定尺寸。 而是,每個小部件響應(yīng)可用于那個小部件的空間調(diào)整它的顯示組件??捎每臻g通過組合界 面定義組件中的信息和正在運(yùn)行應(yīng)用程序的顯示屏的尺寸來定義。有關(guān)顯示屏的尺寸的信 息在運(yùn)行時提供,在為可以在肖像模式與風(fēng)景模式之間變更它們的取向的移動設(shè)備運(yùn)行應(yīng) 用程序期間可以加以改變。當(dāng)改變?nèi)∠驎r,再次解釋界面定義組件,以便向小部件提供有關(guān) 小部件如何在屏幕上顯示自身的新信息。小部件如何顯示自身的細(xì)節(jié)是那個小部件特有 的,并且是那個小部件在運(yùn)行時庫中的方法的一部分。
[0029] 現(xiàn)在參照圖4,圖4例示了各種小部件的位置被變更和尺寸被調(diào)整以便提供更有 效顯示之后顯示在圖3中的復(fù)合GUI。尤其,作為時間的函數(shù)顯示信號的兩個圖形小部件已 經(jīng)被分組在一起,條狀圖形也被分組在一起。定義各種文字條目的標(biāo)記小部件已經(jīng)發(fā)生了 移動,以及字體大小被調(diào)整成比僅僅將整個復(fù)合⑶I小部件重新采樣或重新繪制成較小尺 寸的情況更可讀。
[0030] 在本發(fā)明的一個方面,運(yùn)行時解釋器和傳遞顯示器的尺寸的庫函數(shù)向小部件提供 可用于每個小部件的空間。該小部件然后為并入GUI中提供它的顯示圖像。例如,小部件 可以通過如上所討論,在運(yùn)行時為那個小部件重新采樣或重新繪制圖像,在運(yùn)行時縮放它 的顯示以便填充提供給那個小部件的空間。倘若可用空間大于某個預(yù)定空間,則重新采樣 或重新繪制做法效果良好。但是,如果可用空間變得太小,則用戶難以解釋所得圖像。
[0031] 在本發(fā)明的另一個方面,如果可用空間小于預(yù)定最小值,則小部件生成保護(hù)顯示 器提供的有用數(shù)據(jù)的簡略顯示。現(xiàn)在參照圖5A - 5C,圖5A - 5C例示了當(dāng)可用空間變得太 小時改變顯示風(fēng)格,以便將它的圖像僅僅重新采樣或重新繪制成較小尺寸和仍然具有可讀 小部件圖像的滑動條小部件。圖5A例示了當(dāng)有足夠的空間可用于觀看小部件圖像時,滑動 條小部件的小部件圖像。尤其,該小部件圖像由標(biāo)記"shut-off T"、設(shè)置關(guān)閉溫度的滑動 條圖像81、最小和最大溫度標(biāo)記、和關(guān)閉溫度的當(dāng)前值,即,100C組成。圖5B示出了僅僅重 新采樣或重新繪制以便為顯示在更有限空間中提供較小圖像時的小部件圖像。在這種情 況下,文本變得太小以至于難以閱讀,滑動條本身變得太小以至于難以在屏幕上用觸摸手 勢操作。圖5C例示了用在顯示空間太有限以至于難以使用顯示在圖5A中的圖像時的可替 代滑動條小部件。該可替代滑動條小部件示出了具有通過滑動條控制的數(shù)量和當(dāng)前值的方 框。為了變更數(shù)值,用戶選擇該方框并使用彈出鍵盤鍵入新值。
[0032] 這里,當(dāng)因?yàn)檎诮M合兩個分⑶I所以必須在縮小空間中操作新⑶I時,對每個小 部件提供可用空間,每個小部件又無需用戶調(diào)整顯示器地生成適當(dāng)大小顯示。本發(fā)明的這 個方面還使相同⑶I可以無需為每種顯示可能性提供單獨(dú)⑶I顯示組件地運(yùn)行在具有不同 顯示區(qū)和取向的不同設(shè)備上。
[0033] 如上所述,在運(yùn)行時解釋復(fù)合⑶I的界面定義組件。因此,倘若適當(dāng)編輯器可用, 則可以無需重新編譯底層代碼地在任何時候進(jìn)行復(fù)合⑶I定義組件的實(shí)際組合。事實(shí)上, 可以在⑶I正在運(yùn)行的同時進(jìn)行⑶I的組合,因?yàn)棰荌的輸入和輸出隨著⑶I移動。在生 成新界面定義組件之后,編輯器也可以保存那個文件,以便提供將在不存在編輯器的情況 下工作的新⑶I。
[0034] 在運(yùn)行時期間組合⑶I的能力使正在第一⑶I中觀看DUT的用戶可以迅速地生成 更復(fù)雜GUI,以便考慮到第一 GUI中的信息地探究DUT。用戶僅僅啟動提供附加信息的一個 或多個GUI,并將組件拖放到使所有感興趣信息一起在單個GUI中的復(fù)合GUI中。應(yīng)該注意 至|J,用戶可以將組件個體從第二⑶I拖放到第一 Gn中,或用戶可以將整個第二⑶I拖放到 第一⑶I中。另外,用戶可以從組合⑶I中刪除一個或多個組件。
[0035] 如上所述,小部件自動改變它們的顯示圖像的尺寸的能力顯著簡化了組合⑶I描 述文件的任務(wù)。在本發(fā)明的一個方面,用規(guī)定GUI內(nèi)每個小部件的次序的特殊"小部件"的 措詞定義⑶I。一個這樣的特殊小部件被稱為VPanel,該VPanel規(guī)定⑶I中小部件的垂直 組織陣列。VPanel內(nèi)的所有小部件按規(guī)定在CTI描述文件中的VPanel規(guī)定中的次序組織。 另外,用于VPanel的方法自動劃分可用于小部件的空間,并將那種分配傳遞給為每個小部 件定義顯示的小部件方法。VPanel內(nèi)小部件的次序與小部件出現(xiàn)在VPanel說明中的次序 相同。由于這些方法自動分配小部件的空間和位置,所以顯著簡化了 GUI的GUI描述文件。 其結(jié)果是,也顯著簡化了在復(fù)合⑶I內(nèi)組合和重新排序小部件的編輯任務(wù)??梢詾橐源涡?由說明中的次序決定的水平方式自動組織多個小部件定義類似的特殊小部件。
[0036] 例如,顯示在上述圖形中的⑶I的⑶I描述文件如下:
[0037] 圖 1
[0038] <VPanel> <Trace value=" {Remote currentTraceJ "/> <Label te.xt="DUT current/time(Sec)'V> <Meter value="{Remote dutVoltage}" label="DUT volts" units="V"/> </VPanel>
[0039] 圖 2
[0040] <VPanel> <Trace value="{ Remote fanSpeedTracej 'V> <Label text="Fan speed/time(Sec)"/> <Meter value="{ Remote fan Voltage)" label="Fan volts" units="V"./> <Meter value="{ Remote fanCurrent}" label="Fan current" units="A"/> </VPanel>
[0041] 圖 3
[0042] <VPane!> <Trace value="{Remote currentTrace) "/> <Label text="DUT current/time(Sec)"/> <Meter va!ue=" {Remote dutVoltage}" label-'DUT volts" units="V '/> <Trace value="{Remote fanSpeedTrace}"/> <Label text="Fan speed/time(Sec)"/> <Meter value=" {Remote fan Voltage}" label-'Fan volts" units=!'V"/>
[0043] <Meter value="{Remote fanCurrent}" label="Fan current" units="A"/> </VPanel>
[0044] 圖 4
[0045] <VPanel> <Trace value="{Remote currentTrace}"/> <Label text="DUT current/tiine(Sec)"/> <Trace value=" {Remote fanSpeedTrace {"/> <LabeI text="Fan speed/tiine(Sec)7> <Meter value="{Remote dutVoltage}" !abe!="DUT volts" units="V"/> <Meter value=" {Remote fanVoltageJ" !abel="Fan volts" units="V"/> <Meter value="{Remote fanCurrent}" labe!="Fan current" units="A!'/> </VPanel>
[0046] 應(yīng)該注意到,解釋⑶I描述文件的解釋器可以駐留在用戶正在觀看的數(shù)據(jù)處理系 統(tǒng)上,或在與儀器連接的遠(yuǎn)程數(shù)據(jù)處理器或儀器的一部分上。例如,用戶可以經(jīng)由類似于萬 維網(wǎng)瀏覽器的觀察器訪問GUI。然后,實(shí)際描述文件、編輯器、和運(yùn)行時庫可以處在與觀察器 通信的服務(wù)器上。
[0047] 上述實(shí)施例的一些要求當(dāng)通過組合兩個現(xiàn)有⑶I創(chuàng)建新⑶I時,必須改變⑶I之 一的組件的尺寸。在本發(fā)明的一個方面,每個⑶I由自動改變自身尺寸以便適合可用空間 的組件構(gòu)成。在這個系統(tǒng)中,每個⑶I包括布局描述和響應(yīng)布局描述和可用空間生成⑶I 的運(yùn)行時系統(tǒng)。布局描述如上所討論用某種說明性語言編寫。布局描述被組織成一個或多 個容器。一個容器具有在該容器內(nèi)的一個或多個子組件。一個容器可以具有也是容器的子 件。該容器具有與那個容器相聯(lián)系的定義空間。最外面容器具有由顯示幾何和運(yùn)行時系統(tǒng) 決定的空間。運(yùn)行時系統(tǒng)自動將容器空間劃分成多個分空間,并調(diào)整相應(yīng)子組件的顯示以 便填充指定的分空間。本發(fā)明的這個方面詳細(xì)描述在特此全文并入的同時待審專利申請 13/838, 087 中。
[0048] 上面討論的VPanel組件是這樣容器的一個例子。除非另有規(guī)定,在子組件,例如, 儀表、跡線等之間均等劃分運(yùn)行時系統(tǒng)指定給那個容器的空間。當(dāng)組合兩個GUI時,由編輯 器合并那些⑶I的布局描述。例如,編輯器可以定義較大容器,然后包括每個分GW作為那 個容器的子件。每個分現(xiàn)在具有顯示自身的縮小空間。運(yùn)行時系統(tǒng)自動改變那個GUI 的組件的尺寸以便填充新空間。因此,用戶無需分別應(yīng)付改變組合尺寸使組件適合更有限 空間的任務(wù)。
[0049] 由于包括新組合⑶I的⑶I具有用可以編輯的描述性語言編寫的相應(yīng)布局文件, 所以如果用戶不滿意提供的空間分配,則用戶也可以編輯新布局文件來調(diào)整尺寸。
[0050] 本發(fā)明還包括存儲這樣計算機(jī)指令的計算機(jī)可讀存儲介質(zhì),當(dāng)那些指令被數(shù)據(jù)處 理系統(tǒng)讀取時,那些指令使數(shù)據(jù)處理系統(tǒng)可以執(zhí)行本發(fā)明的方法。計算機(jī)可讀存儲介質(zhì)被 定義成按照35U. S. C. 101構(gòu)成可獲得專利權(quán)的標(biāo)的物的任何計算機(jī)可讀存儲介質(zhì)。這樣的 存儲介質(zhì)包括像計算機(jī)非易失性計算機(jī)存儲器和存儲介質(zhì)那樣的非短暫存儲介質(zhì)。
[0051] 提供本發(fā)明的上述實(shí)施例是為了例示本發(fā)明的各個方面。但是,要明白的是,可以 組合在不同特定實(shí)施例中示出的本發(fā)明的不同方面來提供本發(fā)明的其它實(shí)施例。另外,本 發(fā)明的各種變型可以從前述和附圖中明顯看出。于是,本發(fā)明只由所附權(quán)利要求書的范圍 限定。
【權(quán)利要求】
1. 一種操作包含控制屏幕以便提供程序控制的數(shù)據(jù)處理系統(tǒng)的方法,所述方法包含: 提供第一程序圖形用戶界面(⑶I ),其包含第一⑶I描述和對輸入到所述第一程序⑶I 的數(shù)據(jù)或從所述第一程序GUI輸出的數(shù)據(jù)進(jìn)行操作的第一方法; 提供第二程序GUI,其包含第二GUI描述和對輸入到所述第二程序GUI的數(shù)據(jù)或從所述 第二程序GUI輸出的數(shù)據(jù)進(jìn)行操作的第二方法; 提供具有所述第一和第二方法的運(yùn)行時庫;以及 使所述數(shù)據(jù)處理系統(tǒng)組合所述第一 GUI描述和所述第二GUI描述,以便不重新編譯所 述運(yùn)行時庫地提供復(fù)合GUI。
2. 如權(quán)利要求1所述的方法,其中所述第一 GUI具有來自所述數(shù)據(jù)處理系統(tǒng)的外部源 的信號輸入,以及所述復(fù)合GUI也具有所述信號輸入。
3. 如權(quán)利要求1所述的方法,其中所述第一 GUI具有第一 GUI輸出,以及其中所述復(fù)合 ⑶I也具有所述第一⑶I輸出。
4. 如權(quán)利要求1所述的方法,其中使所述數(shù)據(jù)處理系統(tǒng)組合所述第一 GW描述和所述 第二⑶I描述包含: 顯示所述第一⑶I和所述第二⑶I,所述第一⑶I包含多個小部件;以及 從所述第一 GUI中選擇所述小部件之一,并響應(yīng)來自所述數(shù)據(jù)處理系統(tǒng)的用戶的輸入 地拖放,并使所述小部件的所述之一移動到所述第二GUI中。
5. 如權(quán)利要求4所述的方法,其中響應(yīng)來自所述數(shù)據(jù)處理系統(tǒng)的用戶的輸入,將整個 所述第一⑶I移動到所述第二⑶I中。
6. 如權(quán)利要求1所述的方法,進(jìn)一步包含響應(yīng)來自所述數(shù)據(jù)處理系統(tǒng)的用戶的輸入從 所述復(fù)合⑶I中刪除組件。
7. 如權(quán)利要求1所述的方法,其中所述第二GUI占據(jù)所述控制屏幕上的第一區(qū)域,以及 其中所述數(shù)據(jù)處理系統(tǒng)自動改變所述第一 GW的尺寸,以便所述第一 GW和第二⑶I都占 據(jù)所述第一區(qū)域。
8. 如權(quán)利要求1所述的方法,其中所述第一GW包含通過小部件顯示區(qū)表征的小部件, 以及其中所述數(shù)據(jù)處理系統(tǒng)響應(yīng)所述第一 GUI描述和所述第二GUI描述的所述組合自動改 變所述小部件顯示區(qū)的尺寸。
9. 如權(quán)利要求1所述的方法,其中所述第一 GUI描述包含描述所述第一 GUI的可視布 局的說明性語言文件。
10. -種包含指令的計算機(jī)可讀介質(zhì),該指令使具有控制屏幕的數(shù)據(jù)處理系統(tǒng)執(zhí)行操 作所述數(shù)據(jù)處理系統(tǒng)的方法,所述方法包含: 提供第一程序GUI,其包含第一 GUI描述和對輸入到所述第一程序GUI的數(shù)據(jù)或從所述 第一程序GUI輸出的數(shù)據(jù)進(jìn)行操作的第一方法; 提供第二程序GUI,其包含第二GUI描述和對輸入到所述第二程序GW的數(shù)據(jù)或從所述 第二程序GUI輸出的數(shù)據(jù)進(jìn)行操作的第二方法; 提供具有所述第一和第二方法的運(yùn)行時庫;以及 使所述數(shù)據(jù)處理系統(tǒng)組合所述第一 GUI描述和所述第二GUI描述,以便不重新編譯所 述運(yùn)行時庫地提供復(fù)合GUI。
11. 如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中所述第一 GW具有來自所述數(shù)據(jù)處理 系統(tǒng)的外部源的信號輸入,以及所述復(fù)合GUI也具有所述信號輸入。
12. 如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中所述第一 GUI具有第一 GUI輸出,以及 其中所述復(fù)合GUI也具有所述第一 GUI輸出。
13. 如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中使所述數(shù)據(jù)處理系統(tǒng)組合所述第一 ⑶I描述和所述第二⑶I描述包含: 顯示所述第一⑶I和所述第二⑶I,所述第一⑶I包含多個小部件;以及 從所述第一 GUI中選擇所述小部件之一,并響應(yīng)來自所述數(shù)據(jù)處理系統(tǒng)的用戶的輸入 地拖放,使所述小部件的所述之一移動到所述第二GUI中。
14. 如權(quán)利要求13所述的計算機(jī)可讀介質(zhì),其中響應(yīng)來自所述數(shù)據(jù)處理系統(tǒng)的用戶的 輸入將整個所述第一⑶I移動到所述第二⑶I中。
15. 如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),進(jìn)一步包含響應(yīng)來自所述數(shù)據(jù)處理系統(tǒng)的 用戶的輸入從所述復(fù)合GUI中刪除組件。
16. 如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中所述第二GUI占據(jù)所述控制屏幕上的 第一區(qū)域,以及其中所述數(shù)據(jù)處理系統(tǒng)自動改變所述第一GUI的尺寸,以便所述第一GUI和 第二⑶I都占據(jù)所述第一區(qū)域。
17. 如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中所述第一 GW包含通過小部件顯示區(qū) 表征的小部件,以及其中所述數(shù)據(jù)處理系統(tǒng)響應(yīng)所述第一 GUI描述和所述第二GUI描述的 所述組合自動改變所述小部件顯示區(qū)的尺寸。
18. 如權(quán)利要求10所述的計算機(jī)可讀介質(zhì),其中所述第一 GUI描述包含描述所述第一 GUI的可視布局的說明性語言文件。
【文檔編號】G06F9/44GK104063212SQ201410052706
【公開日】2014年9月24日 申請日期:2014年2月17日 優(yōu)先權(quán)日:2013年3月15日
【發(fā)明者】G.R.恩格爾, J.赫爾夫曼 申請人:安捷倫科技有限公司