在netbeans的属性窗口中使用了哪些gui元素?

时间:2017-10-23 07:44:36

标签: java swing netbeans

我试图在Netbeans的表单设计器中复制属性窗口。我不知道从哪里开始,因为我不知道在该属性窗口中使用了哪些javax.swing组件。

example

如果有人能告诉我使用了哪些组件,或者可以向我发送参考链接,我们将非常感激。

3 个答案:

答案 0 :(得分:1)

  

我试图在Netbeans'中复制属性窗口。表格设计师,在某种程度上。我不知道从哪里开始。

几乎所有东西,但这些都是图片中显示的那个。

  • JTable(用于表格单元格)
  • 的JMenuBar
  • JMenuItem的
  • JScrollPane(滚动条)
  • JPanel(用于分组和安排子组件)
  • JCheckBox的

也许还有..

  • 的JTextField
  • JBotton

未在图片中显示。

只需搜索列表并使用Oracle中的教程,例如:JTable

答案 1 :(得分:1)

AWT中有一个不错但不太知名的功能。 键入 Ctrl + Shift + F1 时, 它转储当前窗口的组件树(即框架或对话框)。

请参阅课程java.awt.Window中的实施:

  

/ **
      *实现调试钩子 - 检查是否
      *用户键入了 control-shift-F1 。如果是的话,
      *子窗口列表被转储到{@code System.out}       * @param e键盘事件
      * /
     void preProcessKeyEvent(KeyEvent e){

这适用于Swing的JFrameJDialog,因为它们最终来自AWT的Window。 因此,您也可以将它用于NetBeans的属性窗口。 然后你会看到里面使用了哪些Swing组件。

以下是我从NetBeans属性窗口获取的转储:

org.netbeans.core.windows.services.NbDialog[dialog0,444,95,476x578,invalid,layout=java.awt.BorderLayout,MODELESS,title=[JPanel] - Properties,defaultCloseOperation=DISPOSE_ON_CLOSE,rootPane=javax.swing.JRootPane[,8,30,460x540,invalid,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=],rootPaneCheckingEnabled=true]
 javax.swing.JRootPane[,8,30,460x540,invalid,layout=javax.swing.JRootPane$RootLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777673,maximumSize=,minimumSize=,preferredSize=]
  javax.swing.JPanel[null.glassPane,0,0,460x540,hidden,layout=java.awt.FlowLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777217,maximumSize=,minimumSize=,preferredSize=]
  javax.swing.JLayeredPane[null.layeredPane,0,0,460x540,invalid,alignmentX=0.0,alignmentY=0.0,border=,flags=256,maximumSize=,minimumSize=,preferredSize=,optimizedDrawingPossible=true]
   javax.swing.JPanel[null.contentPane,0,0,460x540,invalid,layout=javax.swing.JRootPane$1,alignmentX=0.0,alignmentY=0.0,border=,flags=265,maximumSize=,minimumSize=,preferredSize=]
    org.netbeans.core.windows.view.ui.NbSheet[[JPanel] - Properties,0,0,460x491,invalid,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=256,maximumSize=,minimumSize=,preferredSize=]
     org.openide.explorer.propertysheet.PropertySheet[,0,0,460x491,invalid,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=329,maximumSize=,minimumSize=java.awt.Dimension[width=100,height=50],preferredSize=]
      org.openide.explorer.propertysheet.PSheet[,0,0,460x491,invalid,layout=java.awt.FlowLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=329,maximumSize=,minimumSize=,preferredSize=]
       org.netbeans.swing.tabcontrol.TabbedContainer[,0,0,460x491,invalid,layout=org.netbeans.swing.tabcontrol.plaf.DefaultTabbedContainerUI$ToolbarTabsLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=]
        javax.swing.JPanel[Content displayer,0,24,460x467,invalid,layout=org.netbeans.swing.tabcontrol.plaf.StackLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=9,maximumSize=,minimumSize=,preferredSize=]
         javax.swing.JSplitPane[,0,0,460x467,invalid,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1e67a3f,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=5,lastDividerLocation=-4,oneTouchExpandable=false,orientation=VERTICAL_SPLIT]
          org.openide.explorer.propertysheet.DescriptionComponent[,0,407,460x60,invalid,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1df4ecd,flags=0,maximumSize=,minimumSize=,preferredSize=]
           javax.swing.JScrollPane[,2,23,456x37,layout=javax.swing.ScrollPaneLayout$UIResource,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1e67a3f,flags=16777536,maximumSize=,minimumSize=,preferredSize=,columnHeader=,horizontalScrollBar=javax.swing.JScrollPane$ScrollBar[,0,0,0x0,hidden,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=HORIZONTAL,unitIncrement=1],horizontalScrollBarPolicy=HORIZONTAL_SCROLLBAR_NEVER,lowerLeft=,lowerRight=,rowHeader=,upperLeft=,upperRight=,verticalScrollBar=javax.swing.JScrollPane$ScrollBar[,0,0,0x0,hidden,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=VERTICAL,unitIncrement=1],verticalScrollBarPolicy=VERTICAL_SCROLLBAR_NEVER,viewport=javax.swing.JViewport[,0,0,456x37,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165824,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false],viewportBorder=javax.swing.border.EmptyBorder@1e67a3f]
            javax.swing.JViewport[,0,0,456x37,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165824,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
             javax.swing.JEditorPane[,0,0,456x37,layout=javax.swing.plaf.basic.BasicTextUI$UpdateHandler,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$MarginBorder@df5611,flags=16777504,maximumSize=,minimumSize=,preferredSize=,caretColor=javax.swing.plaf.ColorUIResource[r=0,g=0,b=0],disabledTextColor=javax.swing.plaf.ColorUIResource[r=109,g=109,b=109],editable=false,margin=javax.swing.plaf.InsetsUIResource[top=3,left=3,bottom=3,right=3],selectedTextColor=javax.swing.plaf.ColorUIResource[r=255,g=255,b=255],selectionColor=javax.swing.plaf.ColorUIResource[r=51,g=153,b=255],kit=javax.swing.text.html.HTMLEditorKit@1e04ef3,typeHandlers=]
            javax.swing.JScrollPane$ScrollBar[,0,0,0x0,hidden,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=VERTICAL,unitIncrement=1]
             com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,0,0x0,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
             com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,0,0x0,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
            javax.swing.JScrollPane$ScrollBar[,0,0,0x0,hidden,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=HORIZONTAL,unitIncrement=1]
             com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,0,0x0,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
             com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,0,0x0,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
           javax.swing.JLabel[,2,2,435x23,alignmentX=0.0,alignmentY=0.0,border=,flags=8388608,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,horizontalAlignment=LEADING,horizontalTextPosition=TRAILING,iconTextGap=4,labelFor=,text=[JPanel],verticalAlignment=CENTER,verticalTextPosition=CENTER]
           javax.swing.JToolBar[,435,2,23x23,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1e67a3f,flags=328,maximumSize=,minimumSize=,preferredSize=,floatable=false,margin=,orientation=HORIZONTAL,paintBorder=false]
            javax.swing.JButton[,0,0,23x23,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@b39adf,flags=296,maximumSize=,minimumSize=,preferredSize=,defaultIcon=javax.swing.ImageIcon@108600d,disabledIcon=sun.swing.ImageIconUIResource@ce3509,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=false]
          org.openide.explorer.propertysheet.PropUtils$CleanSplitPaneDivider[,0,402,460x5,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
          javax.swing.JScrollPane[,0,0,460x402,layout=javax.swing.ScrollPaneLayout$UIResource,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1e67a3f,flags=328,maximumSize=,minimumSize=,preferredSize=,columnHeader=javax.swing.JViewport[,0,0,443x0,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=false,lastPaintPosition=,scrollUnderway=false],horizontalScrollBar=javax.swing.JScrollPane$ScrollBar[,0,0,0x0,hidden,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=HORIZONTAL,unitIncrement=1],horizontalScrollBarPolicy=HORIZONTAL_SCROLLBAR_AS_NEEDED,lowerLeft=,lowerRight=,rowHeader=,upperLeft=,upperRight=,verticalScrollBar=javax.swing.JScrollPane$ScrollBar[,443,0,17x402,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=VERTICAL,unitIncrement=1],verticalScrollBarPolicy=VERTICAL_SCROLLBAR_AS_NEEDED,viewport=javax.swing.JViewport[,0,0,443x402,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25166088,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false],viewportBorder=javax.swing.border.EmptyBorder@1e67a3f]
           javax.swing.JViewport[,0,0,443x402,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25166088,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
            org.openide.explorer.propertysheet.SheetTable[,0,0,443x666,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1e67a3f,flags=251658600,maximumSize=,minimumSize=,preferredSize=,autoCreateColumnsFromModel=false,autoResizeMode=AUTO_RESIZE_NEXT_COLUMN,cellSelectionEnabled=false,editingColumn=-1,editingRow=-1,gridColor=java.awt.Color[r=213,g=213,b=213],preferredViewportSize=java.awt.Dimension[width=450,height=400],rowHeight=18,rowMargin=1,rowSelectionAllowed=true,selectionBackground=java.awt.Color[r=49,g=106,b=197],selectionForeground=java.awt.Color[r=255,g=255,b=255],showHorizontalLines=true,showVerticalLines=true]
             javax.swing.CellRendererPane[,0,0,0x0,hidden]
           javax.swing.JScrollPane$ScrollBar[,443,0,17x402,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=VERTICAL,unitIncrement=1]
            com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,385,17x17,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
            com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,0,17x17,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
           javax.swing.JScrollPane$ScrollBar[,0,0,0x0,hidden,layout=com.sun.java.swing.plaf.windows.WindowsScrollBarUI,alignmentX=0.0,alignmentY=0.0,border=,flags=4194632,maximumSize=,minimumSize=,preferredSize=,blockIncrement=10,orientation=HORIZONTAL,unitIncrement=1]
            com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,0,0x0,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
            com.sun.java.swing.plaf.windows.WindowsScrollBarUI$WindowsArrowButton[,0,0,0x0,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=4194600,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=true]
           javax.swing.JViewport[,0,0,443x0,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=false,lastPaintPosition=,scrollUnderway=false]
        org.netbeans.swing.tabcontrol.TabDisplayer[Tab Displayer,0,0,460x24,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=]
         org.netbeans.swing.tabcontrol.plaf.ToolbarTabDisplayerUI$TabToolbar[,0,0,460x24,layout=org.netbeans.swing.tabcontrol.plaf.ToolbarTabDisplayerUI$AutoGridLayout,alignmentX=0.0,alignmentY=0.0,border=com.sun.java.swing.plaf.windows.WindowsBorders$ToolBarBorder@111bf78,flags=328,maximumSize=,minimumSize=,preferredSize=,floatable=false,margin=,orientation=HORIZONTAL,paintBorder=true]
          org.netbeans.swing.tabcontrol.plaf.ToolbarTabDisplayerUI$IndexButton[,2,2,62x19,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@b39adf,flags=288,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=java.awt.Insets[top=0,left=3,bottom=0,right=3],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=]
          org.netbeans.swing.tabcontrol.plaf.ToolbarTabDisplayerUI$IndexButton[,65,2,62x19,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@b39adf,flags=288,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=java.awt.Insets[top=0,left=3,bottom=0,right=3],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=]
          org.netbeans.swing.tabcontrol.plaf.ToolbarTabDisplayerUI$IndexButton[,128,2,62x19,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@b39adf,flags=288,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=java.awt.Insets[top=0,left=3,bottom=0,right=3],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=]
          org.netbeans.swing.tabcontrol.plaf.ToolbarTabDisplayerUI$IndexButton[,191,2,62x19,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@b39adf,flags=288,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=java.awt.Insets[top=0,left=3,bottom=0,right=3],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=]
    javax.swing.JPanel[,0,491,460x49,layout=org.openide.awt.EqualFlowLayout,alignmentX=0.0,alignmentY=0.0,border=javax.swing.border.EmptyBorder@1fbb89f,flags=265,maximumSize=,minimumSize=,preferredSize=]
     javax.swing.JButton[,327,16,59x23,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=296,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=Close,defaultCapable=true]
     javax.swing.JButton[,391,16,59x23,alignmentX=0.0,alignmentY=0.5,border=com.sun.java.swing.plaf.windows.XPStyle$XPEmptyBorder@8afeb7,flags=424,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=true,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=Help,defaultCapable=true]

您看到它使用标准的Swing组件(例如JScrollPaneJPanelJButtonJToolBar) 以及一些OpenIDE组件(如org.openide.explorer.propertysheet.SheetTable) 和专有的NetBeans组件(如org.netbeans.swing.tabcontrol.TabDisplayer)。

答案 2 :(得分:0)

您可以使用NetBeans平台并从中重用属性编辑器组件。 Here是有关如何使用Property API的教程,或者查看非常相似的l2fprod-common-sheet here