📄 configdialog.java
字号:
//填充(相对于整个空白区域),横向全部填满。
gridBagConstraints.weightx = 1.0;
//“雷数”文本框四周的空间(上,左,下,右)
gridBagConstraints.insets = new java.awt.Insets(10, 0, 5, 10);
//按照GridBagConstraints对象的约束将“雷数”文本框添加到“自定义”面板
jPanelCustomization.add(jTextFieldMine, gridBagConstraints);
jLabelRow.setText("行数:");
jLabelRow.setEnabled(false);//默认“行数”标签不启用
gridBagConstraints = new java.awt.GridBagConstraints();//创建GridBagConstraints对象
gridBagConstraints.gridx = 0;//“行数”标签单元格横坐标
gridBagConstraints.gridy = 5;//“行数”标签单元格纵坐标
//用方位西北进行填靠
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
//“行数”标签四周的空间(上,左,下,右)
gridBagConstraints.insets = new java.awt.Insets(10, 15, 5, 10);
//按照GridBagConstraints对象的约束将“行数”标签添加到“自定义”面板
jPanelCustomization.add(jLabelRow, gridBagConstraints);
jTextFieldRow.setColumns(5);
jTextFieldRow.setText("8");//设置“行数”文本框默认值
jTextFieldRow.setEnabled(false);//默认“行数”文本框不启用
gridBagConstraints = new java.awt.GridBagConstraints();//创建GridBagConstraints对象
gridBagConstraints.gridx = 1;//“行数”文本框单元格横坐标
gridBagConstraints.gridy = 5;//“行数”文本框单元格纵坐标
//用方位西北进行填靠
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
//填充(相对于整个空白区域),横向全部填满。
gridBagConstraints.weightx = 1.0;
//“行数”文本框四周的空间(上,左,下,右)
gridBagConstraints.insets = new java.awt.Insets(10, 0, 5, 10);
//按照GridBagConstraints对象的约束将“行数”文本框添加到“自定义”面板
jPanelCustomization.add(jTextFieldRow, gridBagConstraints);
jLabelColumn.setText("列数:");
jLabelColumn.setEnabled(false);//默认“列数”标签不启用
gridBagConstraints = new java.awt.GridBagConstraints();//创建GridBagConstraints对象
gridBagConstraints.gridx = 0;//“列数”标签单元格横坐标
gridBagConstraints.gridy = 6;//“列数”标签单元格横坐标
//用方位西北进行填靠
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
//填充(相对于整个空白区域),纵向全部填满。
gridBagConstraints.weighty = 1.0;
//“列数”标签四周的空间(上,左,下,右)
gridBagConstraints.insets = new java.awt.Insets(10, 15, 15, 10);
//按照GridBagConstraints对象的约束将“列数”标签添加到“自定义”面板
jPanelCustomization.add(jLabelColumn, gridBagConstraints);
jTextFieldColumn.setColumns(5);
jTextFieldColumn.setText("8");//设置“列数”文本框默认值
jTextFieldColumn.setEnabled(false);//默认“列数”文本框不启用
gridBagConstraints = new java.awt.GridBagConstraints();//创建GridBagConstraints对象
gridBagConstraints.gridx = 1;//“列数”文本框单元格横坐标
gridBagConstraints.gridy = 6;//“列数”文本框单元格纵坐标
//用方位西北进行填靠
gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;
//填充(相对于整个空白区域),横向全部填满。
gridBagConstraints.weightx = 1.0;
//填充(相对于整个空白区域),纵向全部填满。
gridBagConstraints.weighty = 1.0;
//“列数”文本框四周的空间(上,左,下,右)
gridBagConstraints.insets = new java.awt.Insets(10, 0, 15, 10);
//按照GridBagConstraints对象的约束将“列数”文本框添加到“自定义”面板
jPanelCustomization.add(jTextFieldColumn, gridBagConstraints);
jPanelGlobe.add(jPanelCustomization, java.awt.BorderLayout.CENTER);//“自定义”面板添加到主面板中间
getContentPane().add(jPanelGlobe, java.awt.BorderLayout.CENTER);//主面板添加到窗口中间
pack();//调整此窗口的大小,以适合其子组件的首选大小和布局。
}
private void jRadioButtonCustomizedItemStateChanged(java.awt.event.ItemEvent evt) {
setCustomizationEnabled(jRadioButtonCustomized.isSelected());
}
private void setCustomizationEnabled(boolean b) {//选中“自定义”单选按钮时
jPanelCustomization.setEnabled(b);//启用“自定义雷区”面板
jLabelMine.setEnabled(b);
jLabelRow.setEnabled(b);
jLabelColumn.setEnabled(b);
jTextFieldMine.setEnabled(b);
jTextFieldRow.setEnabled(b);
jTextFieldColumn.setEnabled(b);
}
private void okButtonActionPerformed(java.awt.event.ActionEvent evt) {//“设定”对话框“确定”按钮事件处理
if (jRadioButtonCustomized.isSelected()) {//选中“自定义”单选按钮
try {
mine = Integer.parseInt(jTextFieldMine.getText());//获取雷数
row = Integer.parseInt(jTextFieldRow.getText());//获取雷区行数
column = Integer.parseInt(jTextFieldColumn.getText());//获取雷区列数
} catch (NumberFormatException nfe) {
javax.swing.JOptionPane.showMessageDialog(this, "无效参数!",
"错误", javax.swing.JOptionPane.ERROR_MESSAGE);
return;
}
if (mine <= 0 || row <= 0 || column <= 0 || mine >= row * column) {
javax.swing.JOptionPane.showMessageDialog(this, "无效参数!",
"错误", javax.swing.JOptionPane.ERROR_MESSAGE);
return;
}
} else if (jRadioButtonEasy.isSelected()) {//选中“初级”单选按钮
mine = 10;
row = 8;
column = 8;
} else if (jRadioButtonMedium.isSelected()) {//选中“中级”单选按钮
mine = 40;
row = 16;
column = 16;
} else {//选中“高级”单选按钮
mine = 99;
row = 16;
column = 30;
}
doClose(RET_OK);
}
private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//“设定”对话框“取消”按钮事件处理
doClose(RET_CANCEL);
}
//关闭对话框
private void closeDialog(java.awt.event.WindowEvent evt) {
doClose(RET_CANCEL);
}
private void doClose(int retStatus) {
returnStatus = retStatus;
setVisible(false);
dispose();
}
// Variables declaration - do not modify
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.JPanel buttonPanel;
private javax.swing.JButton cancelButton;
private javax.swing.JLabel jLabelMine;
private javax.swing.JLabel jLabelRow;
private javax.swing.JLabel jLabelColumn;
private javax.swing.JPanel jPanelGlobe;
private javax.swing.JPanel jPanelDifficulty;
private javax.swing.JPanel jPanelCustomization;
private javax.swing.JRadioButton jRadioButtonEasy;
private javax.swing.JRadioButton jRadioButtonMedium;
private javax.swing.JRadioButton jRadioButtonHard;
private javax.swing.JRadioButton jRadioButtonCustomized;
private javax.swing.JTextField jTextFieldMine;
private javax.swing.JTextField jTextFieldRow;
private javax.swing.JTextField jTextFieldColumn;
private javax.swing.JButton okButton;
// End of variables declaration
private int returnStatus = RET_CANCEL;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -