我有一个程序,我有一个设置按钮。此按钮具有显示图像的图像图标。有关如何在按下时执行操作的任何提示。这是代码
var importData = function(fileName) {
// Get file from disk.
var filePath = path.join(folder, fileName);
// Read and import the CSV file.
csv.fromPath(filePath, {
objectMode: true,
headers: keys
})
.on('data', function (data) {
var Obj = new models[fileName](data);
models[fileName].find({}).remove().exec();
Obj.save(function (err, importedObj) {
if (err) {
console.log(fileName, err);
} else if (fileName === 'PHOTOS') {
resizePhoto(importedObj);
}
});
})
.on('end', function() {
console.log(fileName + ': Imported.');
});
};
module.exports = importData;
工作正常。但是当我想使用
时JButton imageButton = new JButton(new ImageIcon("/Users/Sam/Programming/Files/gears.png"));
它不起作用。我的动作预制方法有效,这里是
else if(ae.getActionCommand().equals(imageButton)){//doStuff}
答案 0 :(得分:0)
您的ActionListerner没有响应,因为getActionCommand()应该返回一个String。在这种情况下,它应该是JButton的名称。
else if(ae.getActionCommand().equals(imageButton.getText())){//doStuff}
将其更改为imageButton.getText()可以解决问题。
如果您不确定,只需通过setActionCommand()手动设置ActionCommand,并使用相同的String来验证.equals()方法中的getActionCommand。