我是一個名為“xlog”的程式的新任命的應用程式維護人員。該程式在除 Unity 環境之外的所有環境中都運作良好。它是使用 Gtk2 編寫的。
我以前從未使用過 Unity。我注意到在 Unity 中,選單列似乎被「重定向」到應用程式 GUI 之外的另一個位置,即螢幕頂部的欄位。其次,我的 GUI 中的一個文字輸入框顯示為一條細線,使用者無法訪問,除非透過 Tab 鍵。
如果我將在 Ubuntu 12.04.2 LTS 下完美運行的 xlog 可執行檔複製到 12.10 Unity 發行版,我會看到不同的行為。
我不知道在 xlog 應用程式中應該在哪裡找到或應該考慮修改哪些內容來解決這種情況。 Unity 中有什麼不同於此應用程式正常運行的所有其他環境的獨特之處?
答案1
我注意到在 Unity 中,選單列似乎被「重定向」到應用程式 GUI 之外的另一個位置,即螢幕頂部的欄位。
我認為你所指的是 Unity 上的預設行為。 Unity 使用類似於 OSX 上的全域選單(您在頂部看到的選單)。
如果您希望可以在應用程式中停用此功能,但我認為不太建議這樣做:使用 Unity 的任何人都希望選單不在視窗上,而是在頂部。
關於輸入框我猜測可能是Ubuntu主題的問題。要檢查它,請嘗試變更 Ubuntu 主題(在「系統設定」->「外觀」下)並查看該方塊是否保持不變。
編輯
我很好奇,查看程式碼似乎問題出在您的應用程式中。這似乎解決了這個問題(我無法在該框中輸入換行符,但我不能說這是正常現象還是錯誤)。這些值 (100, 200) 是隨機選擇的,因此這可能不是解決該問題的最佳方法。