亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

控件位置可以配置的Swing桌面是怎么樣的

發布時間:2021-10-29 10:18:08 來源:億速云 閱讀:103 作者:柒染 欄目:編程語言

這篇文章給大家介紹控件位置可以配置的Swing桌面是怎么樣的,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

用過Wordpress或者Joomla的朋友一定對他們的靈活的頁面布局印象深刻。在Joomla中,你可以將一個控件,放在頁面的任何一個位置,例如:左邊,右邊,菜單,底部等等。

所以我也嘗試著在Swing桌面上實現類似的功能,思考以后發現其實swing實現這種功能比利用html頁面實現該功能還簡單。

首先我們定義一個位置接口,實現該接口的類就標示它的位置

public interface Arrange {            public String getComponentName();   }

第二:繼承Arrange 接口,定義不用的位置接口,分別有

public interface ArrangeBottom extends Arrange  public interface ArrangeLeft extends Arrange  public interface ArrangeLogo extends Arrange  public interface ArrangeMainBottom extends Arrange  public interface ArrangeMenuBar extends Arrange  public interface ArrangeRight extends Arrange  public interface ArrangeToolBar extends Arrange

上面的接口標示的位置見下圖:

控件位置可以配置的Swing桌面是怎么樣的

第三:我們寫一個面板,實現位置接口

例如:public class ZPanel extends JPanel implements ArrangeRight

protected void paintComponent(Graphics g) {          if (null != wallpaper) {              processBackground(g);          }          System.out.println("f:paintComponent(Graphics g)");      }       public void setBackground() {          wallpaper = new javax.swing.ImageIcon(getClass()                  .getResource("/com/peraglobal/workspace/initcompt/picpanel/kutoku.jpg"));          this.repaint();      }

第四:在配置文件中配置這個類

打開配置文件按zlconfig.xml

編寫 <bean class="com.peraglobal.workspace.initcompt.picpanel.ZPanel" ></bean>

第五:加載配置文件

我們利用Spring將配置文件中實現了某一接口的類全部拿出,并且加載到指定的位置:

Map<?, ?> lefts = context.getBeansOfType(ArrangeLeft.class);          ArrangeLeft agLeft;           leftPanel.setLayout(new BorderLayout());          JTabbedPane tabLeft = new JTabbedPane();           leftPanel.add(tabLeft);           Iterator<?> it = lefts.entrySet().iterator();          while (it.hasNext()) {              Map.Entry<?, ?> entry = (Map.Entry<?, ?>) it.next();              Object key = entry.getKey();               Class<?> newClass = Class.forName((String) key);              agLeft = (ArrangeLeft) newClass.newInstance();              tabLeft.add((Component) agLeft, agLeft.getComponentName());          }

第六:我們看到我們剛才寫的一個Panel已經加載到了右邊的面板中

控件位置可以配置的Swing桌面是怎么樣的

關于控件位置可以配置的Swing桌面是怎么樣的就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南宫市| 富宁县| 娱乐| 兴和县| 河曲县| 布拖县| 临邑县| 津市市| 琼海市| 宣恩县| 新乐市| 中牟县| 布拖县| 五大连池市| 新昌县| 商丘市| 富民县| 乳源| 上杭县| 固始县| 东明县| 周宁县| 泰宁县| 新乡市| 长兴县| 尚义县| 尖扎县| 乌什县| 钟山县| 苏州市| 东城区| 延长县| 烟台市| 东乡| 拉萨市| 达州市| 那坡县| 望都县| 沅江市| 山西省| 浙江省|