2012-04-30 24 views
1

我需要有一個GUI這樣的:如何在java中繪製框圖?

Block Diagram

這裏所有的矩形必須是按鈕。我怎樣才能做到這一點?建議我使用一些工具,如JFormDesigner

+0

你問如何爲*漆*在Java中的圖?或者你問如何創建一個GUI佈局,其中的框是JButtons? –

+0

我在問如何創建一個GUI佈局,其中的框是JButtons。 – svkvvenky

+0

您想將按鈕繪製爲矩形,還是正在尋找[this](http://cl.ly/3Y1X2l301z383e0f231V)之類的東西。 – Paaske

回答

2

我對JGraph有很多很好的體驗!

請參閱該文檔以及哪些可以實現here

每個節點圖中的一些例子可以點擊和事件可以聽了並採取行動,就像按鈕。事實上,我認爲你可以將JButton放入圖中的節點,但我可能是錯的。

編輯:只是使用普通的Java Swing代碼的佈局會是這樣的

import java.awt.BorderLayout; 
import java.awt.Container; 

import javax.swing.JButton; 
import javax.swing.JFrame; 
import javax.swing.JPanel; 

public class LayoutTest { 

    public static void main(String[] args) { 

     JFrame window = new JFrame(); 
     Container container = window.getContentPane(); 
     container.setLayout(new BorderLayout()); 

     JPanel centerPanel = new JPanel(); 
     centerPanel.add(new JButton("Center")); 
     container.add(centerPanel, BorderLayout.CENTER); 

     JPanel topPanel = new JPanel(); 
     topPanel.add(new JButton("b1")); 
     container.add(topPanel, BorderLayout.NORTH); 

     JPanel rightPanel = new JPanel(); 
     rightPanel.add(new JButton("b3")); 
     container.add(rightPanel, BorderLayout.EAST); 

     JPanel bottomPanel = new JPanel(); 
     bottomPanel.setLayout(new BorderLayout()); 

     JPanel bottomNorthPanel = new JPanel(); 
     bottomNorthPanel.add(new JButton("b2")); 
     bottomPanel.add(bottomNorthPanel, BorderLayout.NORTH); 

     JPanel bottomSouthPanel = new JPanel(); 
     bottomSouthPanel.add(new JButton("b2-1")); 
     bottomSouthPanel.add(new JButton("b2-2")); 

     bottomPanel.add(bottomSouthPanel, BorderLayout.SOUTH); 

     container.add(bottomPanel, BorderLayout.SOUTH); 

     window.setSize(320, 240); 
     window.setVisible(true); 

    } 
} 
0

我想你問上的Java Swing的事情。你可以使用drawLine()和drawRect(),並且你必須控制組件上的繪畫。一旦你明白了這一點,並創建適合你需要的基礎課程,你就可以做得很好。
有關信息:請參閱Schildt關於Swing:入門指南的示例。 495. 頁。listing- http://www.mhprofessional.com/getpage.php?c=computing_downloads.php&cat=112上(去底)

希望這有助於..