Browse Source

REPORT-60477 完成弹窗的按钮有重影,使用UIButton实现

research/11.0
kuangshuai 3 years ago
parent
commit
e6460ff3cf
  1. 31
      designer-base/src/main/java/com/fr/design/mainframe/guide/ui/GuideCompleteDialog.java

31
designer-base/src/main/java/com/fr/design/mainframe/guide/ui/GuideCompleteDialog.java

@ -1,15 +1,17 @@
package com.fr.design.mainframe.guide.ui; package com.fr.design.mainframe.guide.ui;
import com.fr.design.gui.frpane.UITextPane; import com.fr.design.gui.frpane.UITextPane;
import com.fr.design.gui.ibutton.UIButton;
import com.fr.design.gui.ibutton.UIButtonUI;
import com.fr.design.gui.ilable.UILabel; import com.fr.design.gui.ilable.UILabel;
import com.fr.design.i18n.Toolkit; import com.fr.design.i18n.Toolkit;
import com.fr.design.layout.FRGUIPaneFactory; import com.fr.design.layout.FRGUIPaneFactory;
import com.fr.design.mainframe.DesignerContext; import com.fr.design.mainframe.DesignerContext;
import com.fr.design.utils.gui.GUIPaintUtils;
import com.fr.general.IOUtils; import com.fr.general.IOUtils;
import javax.swing.BorderFactory; import javax.swing.BorderFactory;
import javax.swing.Icon; import javax.swing.Icon;
import javax.swing.JButton;
import javax.swing.JDialog; import javax.swing.JDialog;
import javax.swing.JPanel; import javax.swing.JPanel;
import javax.swing.SwingConstants; import javax.swing.SwingConstants;
@ -20,6 +22,7 @@ import java.awt.BorderLayout;
import java.awt.Color; import java.awt.Color;
import java.awt.Container; import java.awt.Container;
import java.awt.Dimension; import java.awt.Dimension;
import java.awt.Graphics2D;
import java.awt.Window; import java.awt.Window;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
@ -83,13 +86,15 @@ public class GuideCompleteDialog extends JDialog {
buttonContainer.setPreferredSize(new Dimension(190,38)); buttonContainer.setPreferredSize(new Dimension(190,38));
buttonContainer.setOpaque(false); buttonContainer.setOpaque(false);
JButton button = new JButton(Toolkit.i18nText("Fine-Design_Guide_Complete_End")); UIButton button = new UIButton(Toolkit.i18nText("Fine-Design_Guide_Complete_End")){
button.setPreferredSize(new Dimension(122, 38)); @Override
button.setBackground(BUTTON_BG_COLOR); public Dimension getPreferredSize() {
return new Dimension(122, 38);
}
};
button.setUI(confirmButtonUI);
button.setRoundBorder(true);
button.setForeground(Color.WHITE); button.setForeground(Color.WHITE);
button.setBorder(null);
button.setContentAreaFilled(false);
button.setOpaque(true);
button.addActionListener(new ActionListener() { button.addActionListener(new ActionListener() {
@Override @Override
public void actionPerformed(ActionEvent e) { public void actionPerformed(ActionEvent e) {
@ -114,4 +119,16 @@ public class GuideCompleteDialog extends JDialog {
repaint(); repaint();
this.setVisible(true); this.setVisible(true);
} }
private UIButtonUI confirmButtonUI = new UIButtonUI() {
protected void doExtraPainting(UIButton b, Graphics2D g2d, int w, int h, String selectedRoles) {
if (isPressed(b) && b.isPressedPainted()) {
GUIPaintUtils.fillPressed(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), BUTTON_BG_COLOR);
} else if (isRollOver(b)) {
GUIPaintUtils.fillRollOver(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted(), BUTTON_BG_COLOR);
} else if (b.isNormalPainted()) {
GUIPaintUtils.fillNormal(g2d, 0, 0, w, h, b.isRoundBorder(), b.getRectDirection(), b.isDoneAuthorityEdited(selectedRoles), b.isPressedPainted(), BUTTON_BG_COLOR);
}
}
};
} }

Loading…
Cancel
Save