📄 composeemail.java
字号:
package jws.awt.net;
// Copyright 1997, John Webster Small
// All rights Reserved
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import jws.net.*;
import jws.awt.*;
public class ComposeEmail
extends WinFrame
{
private Button sendButton = new Button("Send");
private Button toButton = new Button("To:");
private Button ccButton = new Button("Cc:");
private Button bccButton = new Button("Bcc:");
private TextField to = new TextField();
private TextField cc = new TextField();
private TextField bcc = new TextField();
private TextField subject = new TextField();
private TextArea contents = new TextArea();
private Email email = new Email();
private Mailbox mailbox;
private void send()
{
email.setFrom(mailbox.getFrom());
email.setTo(to.getText());
email.setCc(cc.getText());
email.setBcc(bcc.getText());
email.setSubject(subject.getText());
email.attachBody(contents.getText());
mailbox.post(email);
dispose();
}
private WinPanel displayArea()
{
WinPanel p = new WinPanel();
GridBagLayout gridBag = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
p = new WinPanel();
p.setLayout(gridBag);
Label l;
c.fill = GridBagConstraints.BOTH;
c.insets = new Insets(1,2,1,2);
gridBag.setConstraints(toButton, c);
p.add(toButton);
c.gridwidth = GridBagConstraints.REMAINDER;
c.weightx = 1.0;
gridBag.setConstraints(to,c);
p.add(to);
c.gridwidth = GridBagConstraints.RELATIVE;
c.weightx = 0.0;
gridBag.setConstraints(ccButton, c);
p.add(ccButton);
c.gridwidth = GridBagConstraints.REMAINDER;
gridBag.setConstraints(cc,c);
p.add(cc);
c.gridwidth = GridBagConstraints.RELATIVE;
c.weightx = 0.0;
gridBag.setConstraints(bccButton, c);
p.add(bccButton);
c.gridwidth = GridBagConstraints.REMAINDER;
gridBag.setConstraints(bcc,c);
p.add(bcc);
c.gridwidth = GridBagConstraints.RELATIVE;
gridBag.setConstraints(l = new Label("Subject: "), c);
p.add(l);
c.gridwidth = GridBagConstraints.REMAINDER;
gridBag.setConstraints(subject,c);
p.add(subject);
c.gridwidth = GridBagConstraints.REMAINDER;
c.weighty = 1.0;
gridBag.setConstraints(contents,c);
p.add(contents);
return p;
}
public void init(Email email)
{
this.email = email;
to.setText(email.getToAsString());
cc.setText(email.getCcAsString());
bcc.setText(email.getBccAsString());
subject.setText(email.getSubject());
contents.setText(email.getBodyAsString());
}
private void init(Mailbox mailbox)
{
this.mailbox = mailbox;
add("South",sendButton);
add("Center",displayArea());
pack();
sendButton.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{ ComposeEmail.this.send(); }
}
);
}
public ComposeEmail
(String title, Mailbox mailbox)
{
super(title);
init(mailbox);
}
public ComposeEmail
(String title, Mailbox mailbox, Email email)
{
super(title);
init(mailbox);
init(email);
}
/*
public static void main(String[] args)
{
new ComposeEmail("ComposeEmail Demo",
new Mailbox()
{
public void post(Email email)
{ System.out.println(email); }
public String getFrom()
{ return "jsmall@laser.net"; }
})
.appMainWindow().setVisible(true);
}
*/
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -