optionsalertjpanel.java
来自「JStock是一个免费股市软件」· Java 代码 · 共 340 行 · 第 1/2 页
JAVA
340 行
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel4)
.addComponent(jLabel1)
.addComponent(jLabel3))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jTextField2, javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jTextField1)
.addComponent(jPasswordField1, javax.swing.GroupLayout.DEFAULT_SIZE, 126, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jLabel2)
.addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addComponent(jCheckBox2, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(360, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jCheckBox1)
.addGap(23, 23, 23)
.addComponent(jCheckBox2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jPasswordField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton1))
.addComponent(jLabel3))
.addGap(24, 24, 24)
.addComponent(jCheckBox3)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jButton2))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(18, Short.MAX_VALUE))
);
add(jPanel1, java.awt.BorderLayout.CENTER);
}// </editor-fold>//GEN-END:initComponents
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
if(jTextField2.getText().length() == 0)
{
JOptionPane.showMessageDialog(this, "Email address cannot be empty", "Empty email", JOptionPane.WARNING_MESSAGE);
jTextField2.requestFocus();
return;
}
if(jPasswordField1.getPassword().length == 0)
{
JOptionPane.showMessageDialog(this, "Email password cannot be empty", "Empty password", JOptionPane.WARNING_MESSAGE);
jPasswordField1.requestFocus();
return;
}
try {
GoogleMail.Send(
jTextField2.getText(),
new String(jPasswordField1.getPassword()),
jTextField2.getText() + "@gmail.com",
"Testing email from JStock",
"If you can read this email, this means the email alert system for JStock is working properly."
);
} catch (AddressException ex) {
JOptionPane.showMessageDialog(this, "Error in sending email. Please check your network connection.", "Email error", JOptionPane.WARNING_MESSAGE);
log.error("", ex);
return;
} catch (MessagingException ex) {
JOptionPane.showMessageDialog(this, "Error in sending email. Please check your username and password.", "Email error", JOptionPane.WARNING_MESSAGE);
log.error("", ex);
return;
}
JOptionPane.showMessageDialog(this, "The email alert system is working properly.", "Success", JOptionPane.INFORMATION_MESSAGE);
}//GEN-LAST:event_jButton1ActionPerformed
private void jCheckBox2ItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_jCheckBox2ItemStateChanged
// TODO add your handling code here:
if(this.jCheckBox2.isSelected()) {
jLabel1.setEnabled(true);
jLabel2.setEnabled(true);
jLabel3.setEnabled(true);
jButton1.setEnabled(true);
jTextField2.setEnabled(true);
jPasswordField1.setEnabled(true);
}
else {
jLabel1.setEnabled(false);
jLabel2.setEnabled(false);
jLabel3.setEnabled(false);
jButton1.setEnabled(false);
jTextField2.setEnabled(false);
jPasswordField1.setEnabled(false);
}
}//GEN-LAST:event_jCheckBox2ItemStateChanged
public void set(JStockOptions jStockOptions) {
jCheckBox1.setSelected(jStockOptions.isPopupMessage());
jCheckBox2.setSelected(jStockOptions.isSendEmail());
jTextField2.setText(Utils.decrypt(jStockOptions.getEmail()));
jPasswordField1.setText(Utils.decrypt(jStockOptions.getEmailPassword()));
if(jStockOptions.isSingleIndicatorAlert())
jRadioButton1.setSelected(true);
else
jRadioButton2.setSelected(true);
}
public boolean apply(JStockOptions jStockOptions) {
if(jCheckBox2.isSelected()) {
if(jTextField2.getText().length() == 0)
{
JOptionPane.showMessageDialog(this, "Email address cannot be empty", "Empty email", JOptionPane.WARNING_MESSAGE);
jTextField2.requestFocus();
return false;
}
if(jPasswordField1.getPassword().length == 0)
{
JOptionPane.showMessageDialog(this, "Email password cannot be empty", "Empty password", JOptionPane.WARNING_MESSAGE);
jPasswordField1.requestFocus();
return false;
}
}
jStockOptions.setPopupMessage(jCheckBox1.isSelected());
jStockOptions.setSendEmail(jCheckBox2.isSelected());
jStockOptions.setEmail(Utils.encrypt(jTextField2.getText()));
jStockOptions.setEmailPassword(Utils.encrypt(new String(jPasswordField1.getPassword())));
jStockOptions.setSingleIndicatorAlert(jRadioButton1.isSelected());
return true;
}
private static final Log log = LogFactory.getLog(OptionsAlertJPanel.class);
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JCheckBox jCheckBox1;
private javax.swing.JCheckBox jCheckBox2;
private javax.swing.JCheckBox jCheckBox3;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPasswordField jPasswordField1;
private javax.swing.JRadioButton jRadioButton1;
private javax.swing.JRadioButton jRadioButton2;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private org.jdesktop.swingx.JXHeader jXHeader1;
// End of variables declaration//GEN-END:variables
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?