91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

控件位置可以配置的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

犍为县| 呼伦贝尔市| 万荣县| 衡阳市| 遵义县| 舒兰市| 柞水县| 安国市| 河源市| 九寨沟县| 樟树市| 额敏县| 荥阳市| 哈密市| 富源县| 安丘市| 米林县| 田东县| 新闻| 公主岭市| 垦利县| 荆州市| 常宁市| 南平市| 湘潭市| 香河县| 山西省| 安国市| 攀枝花市| 桂东县| 东乌珠穆沁旗| 福鼎市| 兴海县| 应城市| 抚州市| 会宁县| 铜鼓县| 资阳市| 娄烦县| 萍乡市| 阳江市|