javax.swing.JButton#setCursor ( )源码实例Demo

下面列出了javax.swing.JButton#setCursor ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: netbeans   文件: NotifyExcPanel.java
private static JComponent getDetailsPanel(String summary) {
    JPanel details = new JPanel(new GridBagLayout());
    details.setOpaque(false);
    JLabel lblMessage = new JLabel(summary);
    
    JButton reportLink = new JButton("<html><a href=\"_blank\">" + NbBundle.getMessage(NotifyExcPanel.class, "NTF_ExceptionalExceptionReport")); //NOI18N
    reportLink.setFocusable(false);
    reportLink.setBorder(BorderFactory.createEmptyBorder());
    reportLink.setBorderPainted(false);
    reportLink.setFocusPainted(false);
    reportLink.setOpaque(false);
    reportLink.setContentAreaFilled(false);
    reportLink.addActionListener(flash);
    reportLink.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));

    details.add(reportLink, new GridBagConstraints(0, 0, 1, 1, 1.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(3, 0, 3, 0), 0, 0));
    details.add(lblMessage, new GridBagConstraints(0, 1, 1, 1, 1.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, new Insets(3, 0, 3, 0), 0, 0));
    return details;
}
 
源代码2 项目: netbeans   文件: NotificationImpl.java
private JComponent createDetails(String text, ActionListener action) {
    try {
        text = (action == null ? "<html>" : "<html><a href=\"_blank\">") + XMLUtil.toElementContent(text); //NOI18N
    } catch (CharConversionException ex) {
        throw new IllegalArgumentException(ex);
    }
    if (null == action) {
        return new JLabel(text);
    }
    JButton btn = new JButton(text);
    btn.setFocusable(false);
    btn.setBorder(BorderFactory.createEmptyBorder());
    btn.setBorderPainted(false);
    btn.setFocusPainted(false);
    btn.setOpaque(false);
    btn.setContentAreaFilled(false);
    btn.addActionListener(action);
    btn.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    Color c = UIManager.getColor("nb.html.link.foreground"); //NOI18N
    if (c != null) {
        btn.setForeground(c);
    }
    return btn;
}
 
源代码3 项目: netbeans   文件: BrowserMenu.java
private JComponent createConfigureButton() {
    if( null == browserProvider || !browserProvider.hasCustomizer() )
        return null;
    JButton button = new JButton(NbBundle.getMessage(BrowserMenu.class, "Ctl_ConfigurePhoneGap"));
    button.addActionListener( new ActionListener() {

        @Override
        public void actionPerformed( ActionEvent e ) {
            browserProvider.customize();
        }
    });
    button.setBorder( new EmptyBorder(1, 1, 1, 1) );
    button.setMargin( new Insets(0, 0, 0, 0) );

    button.setCursor( Cursor.getPredefinedCursor(Cursor.HAND_CURSOR) );
    button.setHorizontalAlignment( JLabel.LEFT );
    button.setFocusable( false );

    button.setBorderPainted( false );
    button.setFocusPainted( false );
    button.setRolloverEnabled( true );
    button.setContentAreaFilled( false );

    return button;
}
 
源代码4 项目: cstc   文件: Operation.java
private JButton createIconButton(ImageIcon icon) {
	JButton btn = new JButton();
	btn.setBorder(BorderFactory.createEmptyBorder());
	btn.setIcon(icon);
	btn.setContentAreaFilled(false);
	btn.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
	btn.setAlignmentX(Component.RIGHT_ALIGNMENT);

	return btn;
}
 
源代码5 项目: netbeans   文件: LinkButtonPanel.java
/**
 * Set button border and background to look like a label with link.
 */
private void setLinkLikeButton(JButton button) {
    button.setBorderPainted(false);
    button.setContentAreaFilled(false);
    button.setBorder(new EmptyBorder(0, 0, 0, 0));
    button.setCursor(Cursor.getPredefinedCursor(
            Cursor.HAND_CURSOR));
}
 
源代码6 项目: netbeans   文件: SlownessReporter.java
private JButton createDetails(String text) {
    JButton btn = new HtmlButton(text);
    btn.setFocusable(false);
    btn.setBorder(BorderFactory.createEmptyBorder());
    btn.setBorderPainted(false);
    btn.setFocusPainted(false);
    btn.setOpaque(false);
    btn.setContentAreaFilled(false);
    btn.addActionListener(this);
    btn.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    return btn;
}
 
源代码7 项目: freecol   文件: NegotiationDialog.java
/**
 * Gets a trade item button for a given item.
 *
 * @param item The {@code TradeItem} to make a button for.
 * @param saleDir Boolean to indicate the EU price for sale (T) or buy (F)
 * @return A new {@code JButton} for the item.
 */
private JButton getTradeItemButton(TradeItem item, boolean saleDir) {
    
    Market market = getMyPlayer().getMarket();
    JButton button = new JButton(new RemoveAction(item));
    
    // Checks if the items are goods
    if (item.getGoods() != null) {
        int buyPriceTotal = market.getBidPrice(item.getGoods().getType(), item.getGoods().getAmount());
        int salePriceTotal = market.getSalePrice(item.getGoods().getType(), item.getGoods().getAmount());
        
        // Depending on saleDir, creates a button for goods w/ EU buy or sale price
        if (saleDir) {
            button.setText(Messages.message(item.getLabel()) + " " +
                    Messages.message(StringTemplate
                            .template("negotiationDialog.euSalePrice")
                            .addAmount("%priceTotal%", salePriceTotal)));
        } else {
            button.setText(Messages.message(item.getLabel()) + " " +
                    Messages.message(StringTemplate
                            .template("negotiationDialog.euBuyPrice")
                            .addAmount("%priceTotal%", buyPriceTotal)));
        }
    } else {
        // If not goods, follow protocol
        button.setText(Messages.message(item.getLabel()));
    }
    
    button.setMargin(Utility.EMPTY_MARGIN);
    button.setOpaque(false);
    button.setForeground(Utility.LINK_COLOR);
    button.setBorder(Utility.blankBorder(0, 0, 0, 0));
    button.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    return button;
}
 
源代码8 项目: freecol   文件: Utility.java
/**
 * Return a button suitable for linking to another panel
 * (e.g. ColopediaPanel).
 *
 * @param text a {@code String} value
 * @param icon an {@code Icon} value
 * @param action a {@code String} value
 * @return a {@code JButton} value
 */
public static JButton getLinkButton(String text, Icon icon, String action) {
    JButton button = new JButton(text, icon);
    button.setMargin(EMPTY_MARGIN);
    button.setOpaque(false);
    button.setForeground(LINK_COLOR);
    button.setAlignmentY(0.8f);
    button.setBorder(blankBorder(0, 0, 0, 0));
    button.setActionCommand(action);
    button.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    return button;
}
 
源代码9 项目: jpexs-decompiler   文件: ColorEditor.java
public ColorEditor(String fieldName, Object obj, Field field, int index, Class<?> type) {
    this.obj = obj;
    this.field = field;
    this.index = index;
    this.type = type;
    this.fieldName = fieldName;

    setLayout(new FlowLayout());

    buttonChange = new JButton("") {

        @Override
        protected void paintComponent(Graphics g) {
            g.setColor(getBackground());
            g.fillRect(0, 0, getWidth(), getHeight());
            super.paintBorder(g);
        }

    };
    buttonChange.setToolTipText(AppStrings.translate("button.selectcolor.hint"));
    buttonChange.setCursor(new Cursor(Cursor.HAND_CURSOR));
    buttonChange.addActionListener(this);

    buttonChange.setBorderPainted(true);
    buttonChange.setBorder(BorderFactory.createBevelBorder(BevelBorder.RAISED));
    Dimension colorDim = new Dimension(16, 16);
    buttonChange.setSize(colorDim);
    buttonChange.setPreferredSize(colorDim);
    add(buttonChange);
    reset();
}
 
源代码10 项目: jpexs-decompiler   文件: MainFrameStatusPanel.java
private void createStatusPanel() {
    JPanel statusLeftPanel = new JPanel();
    statusLeftPanel.setLayout(new BoxLayout(statusLeftPanel, BoxLayout.X_AXIS));
    loadingPanel.setPreferredSize(new Dimension(30, 30));
    // todo: this button is a little bit ugly in the UI. Maybe it can be changed to an icon (as in NetBeans)
    cancelButton.setText(translate("button.cancel"));
    cancelButton.setPreferredSize(new Dimension(100, 30));
    cancelButton.setBorderPainted(false);
    cancelButton.setOpaque(false);
    cancelButton.addActionListener((ActionEvent e) -> {
        if (currentWorker != null) {
            currentWorker.cancel(true);
        }
    });
    statusLeftPanel.add(loadingPanel);
    statusLeftPanel.add(cancelButton);
    statusLeftPanel.add(statusLabel);
    setPreferredSize(new Dimension(1, 30));
    setBorder(new BevelBorder(BevelBorder.LOWERED));
    setLayout(new BorderLayout());
    add(statusLeftPanel, BorderLayout.WEST);

    errorNotificationButton = new JButton("");
    errorNotificationButton.setIcon(View.getIcon("okay16"));
    errorNotificationButton.setBorderPainted(false);
    errorNotificationButton.setFocusPainted(false);
    errorNotificationButton.setContentAreaFilled(false);
    errorNotificationButton.setMargin(new Insets(2, 2, 2, 2));
    errorNotificationButton.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    errorNotificationButton.addActionListener(this::showErrorLogButtonActionPerformed);
    errorNotificationButton.setToolTipText(translate("errors.none"));
    add(errorNotificationButton, BorderLayout.EAST);

    loadingPanel.setVisible(false);
    cancelButton.setVisible(false);
}
 
源代码11 项目: Data_Processor   文件: UnicornSplitPaneUI.java
/**  
 * Creates and return an instance of JButton that can be used to  
 * collapse the right component in the split pane.  
 */  
@Override  
protected JButton createRightOneTouchButton() {   
	JButton b = new JButton() {   
		private static final long serialVersionUID = 1L;

		public void setBorder(Border border) {   
		}   

		@Override  
		public void paint(Graphics g) {   
			if (splitPane != null) {   
				int[] xs = new int[3];   
				int[] ys = new int[3];   
				int blockSize;   

				// Fill the background first ...   
				g.setColor(new Color(255,0,255));   
				g.fillRect(0, 0, this.getWidth(),   
						this.getHeight());   

				// ... then draw the arrow.   
				if (orientation == JSplitPane.VERTICAL_SPLIT) {   
					blockSize = Math.min(getHeight(), oneTouchSize);   
					xs[0] = blockSize;   
					xs[1] = blockSize << 1;   
					xs[2] = 0;   
					ys[0] = blockSize;   
					ys[1] = ys[2] = 0;   
				} else {   
					blockSize = Math.min(getWidth(), oneTouchSize);   
					xs[0] = xs[2] = 0;   
					xs[1] = blockSize;   
					ys[0] = 0;   
					ys[1] = blockSize;   
					ys[2] = blockSize << 1;   
				}   
				g.setColor(new Color(255,0,255));     
				g.fillPolygon(xs, ys, 3);   
			}   
		}   
		// Don't want the button to participate in focus traversable.   

		public boolean isFocusTraversable() {   
			return false;   
		}   
	};   
	b.setMinimumSize(new Dimension(oneTouchSize, oneTouchSize));   
	b.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));   
	b.setFocusPainted(false);   
	b.setBorderPainted(false);   
	b.setRequestFocusEnabled(false);   
	return b;   
}
 
源代码12 项目: opt4j   文件: PropertyPanel.java
protected void updatePropertyPanel() {
	panel.removeAll();

	for (final Property property : module.getProperties()) {
		if (property.isActive()) {
			String name = property.getName();

			int i = getIndent(property);
			String s = "";
			for (int j = 0; j < i; j++) {
				s += "     ";
			}
			if (i > 0) {
				s = s.substring(2) + "\u21aa ";
			}

			JPanel labelPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, 0, 0));
			JLabel label = new JLabel(s + name);
			label.setFocusable(false);
			String tooltip = format.getTooltip(property);
			if (tooltip != null) {
				label.setToolTipText(tooltip);
			}
			labelPanel.add(label);

			File file = property.getAnnotation(File.class);
			if (file != null) {
				JButton browse = new JButton(Icons.getIcon(Icons.FOLDER));
				browse.setFocusable(false);
				browse.setBorderPainted(false);
				browse.setContentAreaFilled(false);
				browse.setBorder(BorderFactory.createEmptyBorder(0, 4, 0, 0));

				browse.addActionListener((ActionEvent e) -> selectFile(property));
				browse.setCursor(new Cursor(Cursor.HAND_CURSOR));
				browse.setToolTipText("Browse ...");
				labelPanel.add(browse);
			}
			panel.add(labelPanel);

			Component component = components.get(property);
			panel.add(component);
		}
	}

	if (module.getModule().getClass().isAnnotationPresent(Citation.class)) {
		Citation citation = module.getModule().getClass().getAnnotation(Citation.class);
		addReferenceRow(citation);
	}
}
 
源代码13 项目: dualsub   文件: PanelPlayer.java
private void initialize() {
	this.setLayout(null);
	this.setBorder(new TitledBorder(UIManager
			.getBorder("TitledBorder.border"), I18N
			.getHtmlText("PanelPlayer.border.text"), TitledBorder.LEADING,
			TitledBorder.TOP, null, null));
	this.setBounds(46, 220, 305, 111);
	this.setBackground(parent.getBackground());

	// Width
	JLabel lblWitdh = new JLabel(
			I18N.getHtmlText("PanelPlayer.lblWidth.text"));
	lblWitdh.setBounds(10, 26, 140, 20);
	this.add(lblWitdh);
	sizePx = new JTextField();
	sizePx.setColumns(10);
	sizePx.setBounds(150, 26, 60, 20);
	String savedWitdth = parent.getPreferences().get("width",
			parent.getProperties().getProperty("width"));
	sizePx.setText(savedWitdth);
	this.add(sizePx);
	JLabel lblPx = new JLabel(I18N.getHtmlText("PanelPlayer.lblPx.text"));
	lblPx.setBounds(215, 26, 40, 20);
	this.add(lblPx);

	// Font
	JLabel lblFont = new JLabel(
			I18N.getHtmlText("PanelPlayer.lblFont.text"));
	lblFont.setBounds(10, 50, 140, 20);
	this.add(lblFont);
	fontComboBox = new JComboBox<String>();
	fontComboBox.setBounds(150, 49, 150, 20);
	fontComboBox.setModel(new DefaultComboBoxModel<String>(Font
			.getFontList()));
	fontComboBox.setCursor(parent.getCursor());

	String savedFont = parent.getPreferences().get("font",
			parent.getProperties().getProperty("selectedFont"));
	if (savedFont != null) {
		fontComboBox.setSelectedItem(savedFont);
	}
	this.add(fontComboBox);

	// Size
	JLabel lblSize = new JLabel(
			I18N.getHtmlText("PanelPlayer.lblSize.text"));
	lblSize.setBounds(10, 73, 140, 20);
	this.add(lblSize);
	sizeComboBox = new JComboBox<String>();

	// VLC: Very small: 17pt - Small: 20pt
	// Normal: 22pt - Big: 29pt - Very big: 58pt
	sizeComboBox.setModel(new DefaultComboBoxModel<String>(Font
			.getWidthList()));
	sizeComboBox.setBounds(150, 72, 60, 20);
	sizeComboBox.setCursor(parent.getCursor());
	String savedSize = parent.getPreferences().get("size",
			parent.getProperties().getProperty("selectedSizeIndex"));
	if (savedSize != null) {
		sizeComboBox.setSelectedIndex(Integer.parseInt(savedSize));
	}
	this.add(sizeComboBox);
	JLabel lblPt = new JLabel(I18N.getHtmlText("PanelPlayer.lblPt.text"));
	lblPt.setBounds(215, 72, 40, 20);
	this.add(lblPt);

	// Help
	JButton buttonHelpSub = new JButton(new ImageIcon(
			ClassLoader.getSystemResource("img/help.png")));
	buttonHelpSub.setBounds(273, 16, 22, 22);
	buttonHelpSub.setCursor(parent.getCursor());
	buttonHelpSub.addActionListener(new ActionListener() {
		public void actionPerformed(ActionEvent e) {
			HelpPlayerDialog helpPlayerDialog = parent.getHelpPlayer();
			if (helpPlayerDialog == null) {
				helpPlayerDialog = new HelpPlayerDialog(parent, true);
			}
			helpPlayerDialog.setVisible();
		}
	});
	this.add(buttonHelpSub);

	// Borders (for debug purposes)
	if (log.isTraceEnabled()) {
		Border border = BorderFactory.createLineBorder(Color.black);
		lblWitdh.setBorder(border);
		lblFont.setBorder(border);
		lblSize.setBorder(border);
		lblPx.setBorder(border);
		lblPt.setBorder(border);
	}

}
 
源代码14 项目: Darcula   文件: DarculaSplitPaneDivider.java
@Override
protected JButton createRightOneTouchButton() {
    JButton b = new JButton() {
        public void setBorder(Border border) {
        }
        public void paint(Graphics g) {
            if (splitPane != null) {
                int[]          xs = new int[3];
                int[]          ys = new int[3];
                int            blockSize;

                // Fill the background first ...
                g.setColor(this.getBackground());
                g.fillRect(0, 0, this.getWidth(),
                        this.getHeight());

                // ... then draw the arrow.
                if (orientation == JSplitPane.VERTICAL_SPLIT) {
                    blockSize = Math.min(getHeight(), ONE_TOUCH_SIZE);
                    xs[0] = blockSize;
                    xs[1] = blockSize << 1;
                    xs[2] = 0;
                    ys[0] = blockSize;
                    ys[1] = ys[2] = 0;
                }
                else {
                    blockSize = Math.min(getWidth(), ONE_TOUCH_SIZE);
                    xs[0] = xs[2] = 0;
                    xs[1] = blockSize;
                    ys[0] = 0;
                    ys[1] = blockSize;
                    ys[2] = blockSize << 1;
                }
                g.setColor(new DoubleColor(Gray._255, UIUtil.getLabelForeground()));
                g.fillPolygon(xs, ys, 3);
            }
        }
        // Don't want the button to participate in focus traversable.
        public boolean isFocusTraversable() {
            return false;
        }
    };
    b.setMinimumSize(new Dimension(ONE_TOUCH_SIZE, ONE_TOUCH_SIZE));
    b.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
    b.setFocusPainted(false);
    b.setBorderPainted(false);
    b.setRequestFocusEnabled(false);
    return b;
}
 
源代码15 项目: netbeans   文件: ClassPresenterPanel.java
private void initComponents() {
    Color borderColor = UIManager.getLookAndFeel().getID().equals("Metal") ? // NOI18N
        UIManager.getColor("Button.darkShadow") : UIManager.getColor("Button.shadow"); // NOI18N
    setBorder(BorderFactory.createCompoundBorder(
        BorderFactory.createLineBorder(borderColor), BorderFactory.createEmptyBorder(2, 5, 2, 5)));
    setOpaque(true);
    setBackground(UIUtils.getDarker(UIUtils.getProfilerResultsBackground()));

    headerRenderer = new HeaderRenderer();
    headerRenderer.setIcon(ICON_CLASS);
    headerRenderer.setForeground(UIManager.getColor("ToolTip.foreground")); // NOI18N
    headerRenderer.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    headerRenderer.setOpaque(false);

    detailsRenderer = new JLabel();
    detailsRenderer.setForeground(UIManager.getColor("ToolTip.foreground")); // NOI18N
    detailsRenderer.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    detailsRenderer.setOpaque(false);
    
    actionsDivider = new JLabel("  |  "); // NOI18N
    actionsDivider.setForeground(UIManager.getColor("ToolTip.foreground")); // NOI18N
    actionsDivider.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    actionsDivider.setOpaque(false);

    actionsRenderer = new JButton() {
        protected void fireActionPerformed(ActionEvent e) {
            if (heapFragmentWalker != null) {
                BrowserUtils.performTask(new Runnable() {
                    public void run() {
                        heapFragmentWalker.computeRetainedSizes(true, true);
                    }
                });
            }
        }
        public Dimension getMinimumSize() {
            return getPreferredSize();
        }
        public Dimension getMaximumSize() {
            return getPreferredSize();
        }
        public void setVisible(boolean visible) {
            super.setVisible(visible);
            actionsDivider.setVisible(visible);
        }
        public boolean isContentAreaFilled() {
            return !UIUtils.isOracleLookAndFeel() ? false : isFocusOwner();
        }
        public boolean isOpaque() {
            return !UIUtils.isOracleLookAndFeel() ? false : isFocusOwner();
        }
    };
    actionsRenderer.setOpaque(false);
    actionsRenderer.setContentAreaFilled(false);
    actionsRenderer.setBorderPainted(true);
    actionsRenderer.setMargin(new Insets(0, 0, 0, 0));
    actionsRenderer.setBorder(BorderFactory.createEmptyBorder());
    actionsRenderer.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    actionsRenderer.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    actionsRenderer.setText("<html><nobr><a href='#'>" + Bundle.ClassPresenterPanel_RetainedSizesString() + "</a></nobr></html>"); // NOI18N
    actionsRenderer.setVisible(false);

    JPanel detailsContainer = new JPanel(new FlowLayout(FlowLayout.LEADING, 0, 0));
    detailsContainer.setOpaque(false);
    detailsContainer.add(detailsRenderer);
    detailsContainer.add(actionsDivider);
    detailsContainer.add(actionsRenderer);
    
    setLayout(new GridBagLayout());
    
    GridBagConstraints c = new GridBagConstraints();
    c.gridx = 0;
    add(headerRenderer, c);
    
    JPanel filler = new JPanel(null);
    filler.setOpaque(false);
    c = new GridBagConstraints();
    c.gridx = 1;
    c.weightx = 1;
    c.fill = GridBagConstraints.HORIZONTAL;
    add(filler, c);
    
    c = new GridBagConstraints();
    c.gridx = 2;
    add(detailsContainer, c);
}
 
private void registerDrag(JButton drag) {
    drag.setContentAreaFilled(false);
    drag.setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR));
    WindowMover.register(this, drag, WindowMover.MOVE_BOTH);
}
 
源代码17 项目: visualvm   文件: ClassPresenterPanel.java
private void initComponents() {
    Color borderColor = UIManager.getLookAndFeel().getID().equals("Metal") ? // NOI18N
        UIManager.getColor("Button.darkShadow") : UIManager.getColor("Button.shadow"); // NOI18N
    setBorder(BorderFactory.createCompoundBorder(
        BorderFactory.createLineBorder(borderColor), BorderFactory.createEmptyBorder(2, 5, 2, 5)));
    setOpaque(true);
    setBackground(UIUtils.getDarker(UIUtils.getProfilerResultsBackground()));

    headerRenderer = new HeaderRenderer();
    headerRenderer.setIcon(ICON_CLASS);
    headerRenderer.setForeground(UIManager.getColor("ToolTip.foreground")); // NOI18N
    headerRenderer.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    headerRenderer.setOpaque(false);

    detailsRenderer = new JLabel();
    detailsRenderer.setForeground(UIManager.getColor("ToolTip.foreground")); // NOI18N
    detailsRenderer.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    detailsRenderer.setOpaque(false);
    
    actionsDivider = new JLabel("  |  "); // NOI18N
    actionsDivider.setForeground(UIManager.getColor("ToolTip.foreground")); // NOI18N
    actionsDivider.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    actionsDivider.setOpaque(false);

    actionsRenderer = new JButton() {
        protected void fireActionPerformed(ActionEvent e) {
            if (heapFragmentWalker != null) {
                BrowserUtils.performTask(new Runnable() {
                    public void run() {
                        heapFragmentWalker.computeRetainedSizes(true, true);
                    }
                });
            }
        }
        public Dimension getMinimumSize() {
            return getPreferredSize();
        }
        public Dimension getMaximumSize() {
            return getPreferredSize();
        }
        public void setVisible(boolean visible) {
            super.setVisible(visible);
            actionsDivider.setVisible(visible);
        }
        public boolean isContentAreaFilled() {
            return !UIUtils.isOracleLookAndFeel() ? false : isFocusOwner();
        }
        public boolean isOpaque() {
            return !UIUtils.isOracleLookAndFeel() ? false : isFocusOwner();
        }
    };
    actionsRenderer.setOpaque(false);
    actionsRenderer.setContentAreaFilled(false);
    actionsRenderer.setBorderPainted(true);
    actionsRenderer.setMargin(new Insets(0, 0, 0, 0));
    actionsRenderer.setBorder(BorderFactory.createEmptyBorder());
    actionsRenderer.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
    actionsRenderer.setFont(UIManager.getFont("ToolTip.font")); // NOI18N
    actionsRenderer.setText("<html><nobr><a href='#'>" + Bundle.ClassPresenterPanel_RetainedSizesString() + "</a></nobr></html>"); // NOI18N
    actionsRenderer.setVisible(false);

    JPanel detailsContainer = new JPanel(new FlowLayout(FlowLayout.LEADING, 0, 0));
    detailsContainer.setOpaque(false);
    detailsContainer.add(detailsRenderer);
    detailsContainer.add(actionsDivider);
    detailsContainer.add(actionsRenderer);
    
    setLayout(new GridBagLayout());
    
    GridBagConstraints c = new GridBagConstraints();
    c.gridx = 0;
    add(headerRenderer, c);
    
    JPanel filler = new JPanel(null);
    filler.setOpaque(false);
    c = new GridBagConstraints();
    c.gridx = 1;
    c.weightx = 1;
    c.fill = GridBagConstraints.HORIZONTAL;
    add(filler, c);
    
    c = new GridBagConstraints();
    c.gridx = 2;
    add(detailsContainer, c);
}
 
源代码18 项目: rapidminer-studio   文件: ButtonDecotrator.java
/** Removes background and border, changes cursor to hand. */
public static void decorateAsLinkButton(JButton button) {
	button.setBorderPainted(false);
	button.setContentAreaFilled(false);
	button.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
 
源代码19 项目: beautyeye   文件: BESplitPaneDivider.java
/**
 * Creates and return an instance of JButton that can be used to
 * collapse the right component in the split pane.
 *
 * @return the j button
 */
protected JButton createRightOneTouchButton() {
	JButton b = new JButton() {
		public void setBorder(Border border) {
		}
		public void paint(Graphics g) {
			if (splitPane != null) {
				int[]          xs = new int[3];
				int[]          ys = new int[3];
				int            blockSize;

				// Fill the background first ...
				g.setColor(this.getBackground());
				g.fillRect(0, 0, this.getWidth(),
						this.getHeight());

				//* 开启反走样
				BEUtils.setAntiAliasing((Graphics2D)g, true);
				
				// ... then draw the arrow.
				if (orientation == JSplitPane.VERTICAL_SPLIT) {
					blockSize = Math.min(getHeight(), oneTouchSize);
					xs[0] = blockSize;
					xs[1] = blockSize << 1;
					xs[2] = 0;
					ys[0] = blockSize;
					ys[1] = ys[2] = 0;
				}
				else {
					blockSize = Math.min(getWidth(), oneTouchSize);
					xs[0] = xs[2] = 0;
					xs[1] = blockSize;
					ys[0] = 0;
					ys[1] = blockSize;
					ys[2] = blockSize << 1;
				}

				//modified by jb2011
				g.setColor(TOUCH_BUTTON_COLOR);//Color.black);

				g.fillPolygon(xs, ys, 3);
				
				//* 关闭反走样
				BEUtils.setAntiAliasing((Graphics2D)g, false);
			}
		}
		// Don't want the button to participate in focus traversable.
		public boolean isFocusTraversable() {
			return false;
		}
	};
	b.setMinimumSize(new Dimension(oneTouchSize, oneTouchSize));
	b.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
	b.setFocusPainted(false);
	b.setBorderPainted(false);
	b.setRequestFocusEnabled(false);
	return b;
}
 
源代码20 项目: netbeans-mmd-plugin   文件: MessagePanel.java
MessagePanel(@Nullable final Image icon, @Nullable final String title, @Nonnull final Color background, @Nonnull final JComponent component) {
  super(new GridBagLayout());
  this.setBackground(background);
  this.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createLineBorder(Color.BLACK), BorderFactory.createEmptyBorder(8, 8, 8, 8)));

  final GridBagConstraints constraints = new GridBagConstraints();

  final JLabel labelTitle = new JLabel(title == null ? "" : title, icon == null ? null : new ImageIcon(icon),SwingConstants.CENTER); //NOI18N
  labelTitle.setForeground(Color.black);
  constraints.gridx = 0;
  constraints.gridy = 0;
  constraints.gridwidth = 1;
  constraints.gridheight = 1;
  constraints.weightx = 1000;
  constraints.fill = GridBagConstraints.BOTH;
  constraints.anchor = GridBagConstraints.NORTHWEST;
  
  labelTitle.setFont(labelTitle.getFont().deriveFont(Font.BOLD));
  
  this.add(labelTitle, constraints);

  constraints.gridx = 1;
  constraints.gridy = 0;

  final JButton closeButton = new JButton(NIMBUS_CLOSE_ICON);
  closeButton.addActionListener(this);
  closeButton.setBorder(null);
  closeButton.setContentAreaFilled(false);
  closeButton.setMargin(new Insets(0, 0, 0, 0));
  closeButton.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
  closeButton.setOpaque(false);

  constraints.weightx = 1;
  
  this.add(closeButton, constraints);

  constraints.gridx = 0;
  constraints.gridy = 1;

  constraints.gridwidth = 2;
  constraints.weightx = 1;

  final JSeparator separator = new JSeparator(JSeparator.HORIZONTAL);
  separator.setForeground(Color.DARK_GRAY);
  this.add(separator, constraints);
  
  constraints.gridx = 0;
  constraints.gridy = 2;
  constraints.weightx = 1000;
  constraints.weighty = 1000;

  this.add(component, constraints);

  this.setAlignmentY(Component.RIGHT_ALIGNMENT);
  
  doLayout();

  ACTIVE_MESSAGES.incrementAndGet();
}