我有一种情况,我需要在点击JButton后显示一个JOptionPane.JButton有一个默认图标和一个翻转图标(显示鼠标滚过按钮的时间).但是,一旦单击按钮并显示JOptionPane,翻转图标就不会更改回原始图标,并继续保持这种状态,直到用户在选择适当的JOptionPane选项后将鼠标带回JButton的框架.如果单击JButton并显示JOptionPane,我将如何"取消翻转"它?
TL; DR:即使单击并显示JOptionPanel,JButton也会显示翻转图标.我不喜欢.
这是SSCCE:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.UIManager;
public class ButtonUnrollover {
public static void main(String[] args) {
JFrame f = new JFrame();
final JPanel p = new JPanel();
JButton b = new JButton();
b.setIcon(UIManager.getIcon("OptionPane.informationIcon"));
b.setRolloverIcon(UIManager.getIcon("OptionPane.errorIcon"));
// b.setSelectedIcon(UIManager.getIcon("OptionPane.informationIcon"));
// b.setRolloverSelectedIcon(UIManager.getIcon("OptionPane.informationIcon"));
// b.setPressedIcon(UIManager.getIcon("OptionPane.informationIcon"));
p.add(b);
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane jOP = new JOptionPane("Dummy message");
JDialog dialog = jOP.createDialog(p, null);
dialog.setVisible(true);
} …Run Code Online (Sandbox Code Playgroud) 我有以下代码:
Scalar m; //Scalar is a class for a 4 variable vector. m is its instance.
Scalar std;
meanStdDev(hist, m, std);
Run Code Online (Sandbox Code Playgroud)
它运作良好,但不适用于以下情况.
vector < float > m;
vector < float > std;
meanStdDev(hist, m, std);
Run Code Online (Sandbox Code Playgroud)
我无法理解这个问题,因为我也在创建一个向量,就像Scalar一样.请解释.
我正在研究Matlab中的图像处理代码,除非我用波形符号调用原始图像上的函数然后将其保存到同一个变量(在互联网上找到它),否则稀释将不起作用.
I= bwmorph(~I, 'thin', inf);
I=~I;
Run Code Online (Sandbox Code Playgroud)
我的问题是,波浪号在这里做什么/意味着什么?