十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
写了一个很简单的案例,可以参考和修改
创新互联专注骨干网络服务器租用十载,服务更有保障!服务器租用,四川雅安服务器托管 成都服务器租用,成都服务器托管,骨干网络带宽,享受低延迟,高速访问。灵活、实现低成本的共享或公网数据中心高速带宽的专属高性能服务器。
import java.awt.BorderLayout;
import java.awt.GridLayout;
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.JLabel;
import javax.swing.JTextField;
public class FromeDemo extends JFrame{
JButton jbutton;
public FromeDemo() {
jbutton = new JButton("弹出2个文本框");
jbutton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JDialog jd = new JDialog();
jd.setBounds(320, 180, 260, 100);
jd.setTitle("弹出文本框");
jd.getContentPane().setLayout(new GridLayout(2, 2));
jd.add(new JLabel("文本框一"));
jd.add(new JTextField(80));
jd.add(new JLabel("文本框二"));
jd.add(new JTextField(80));
jd.setModal(true);//确保弹出的窗口在其他窗口前面
jd.setVisible(true);
}
});
add(jbutton,BorderLayout.SOUTH);
setBounds(300, 100, 320, 320);
setTitle("测试");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String args[]) {
new FromeDemo();
}
}
import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import javax.imageio.IIOImage;
import javax.imageio.ImageIO;
import javax.imageio.ImageWriter;
import javax.imageio.stream.ImageOutputStream;
public class Ttex {
BufferedImage bi = new BufferedImage(300, 200, BufferedImage.TYPE_INT_RGB);
public Ttex(String text) {
Graphics gr = bi.createGraphics();
gr.setColor(Color.white);
gr.fillRect(0, 0, bi.getWidth(), bi.getHeight());
gr.setColor(Color.GRAY);
gr.drawString(text, 10, 10);
}
/**
* 根据地址来保存文件
*
* @param dir
* 文件地址
*/
private void Save(String dir) {
BufferedImage image = bi;
// 得到系统支持的图片写入器
Iterator it = ImageIO.getImageWritersBySuffix("jpg");
ImageWriter iw = null;
if (it.hasNext()) {
try {
ImageOutputStream imgOut = ImageIO
.createImageOutputStream(new File(dir));
iw = (ImageWriter) it.next();
iw.setOutput(imgOut);
IIOImage iioi = new IIOImage(image, null, null);
iw.write(iioi);
imgOut.close();
iw.dispose();
} catch (IOException e1) {
}
}
}
public static void main(String[] args) {
Ttex m = new Ttex("0123456789");
m.Save("D:/1.jpg");
}
}
给的分有点少了,看看效果还满意吗?如果满意加分啊!O(∩_∩)O哈哈~
import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class TextFile extends JFrame {
private Container c;
private JTextField jtf;//文本框
private JButton jb;//按钮
private JComboBox jc;//下拉框
private JTextArea jta;//文本区
private JScrollPane jsp;
public TextFile() {
this.setTitle("页面展示");
c = this.getContentPane();
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
this.setLayout(gridbag);
jtf = new JTextField();
jb = new JButton("BUTTON开始");
String[] city = {"下拉框列表", "中国", "美国", "英国"};
jc = new JComboBox(city);
jta = new JTextArea();
jta.setRows(10);//设置文本区列数
jsp = new JScrollPane();
gbc.anchor = GridBagConstraints.NORTH; // 当组件没有空间大时,使组件处在北部
gbc.fill = GridBagConstraints.HORIZONTAL;;
gbc.gridx = 0;//横坐标
gbc.gridy = 0;//纵坐标
gbc.gridwidth = 2;//横占几个网格
jtf.setText("这里是文本框,显示一些东西");
gridbag.setConstraints(jtf, gbc);
c.add(jtf);
gbc.fill = GridBagConstraints.BOTH;
gbc.insets = new Insets(10, 0, 0, 10); // 组件彼此的间距
gbc.gridx = 0;
gbc.gridy = 1;
gbc.gridwidth = 1;
gbc.ipadx = 0; // 组件内部填充空间,即给组件的最小宽度添加多大的空间
gbc.ipady = -100; // 组件内部填充空间,即给组件的最小高度添加多大的空间
gridbag.setConstraints(jc, gbc);
c.add(jc);
gbc.insets = new Insets(10, 0, 10, 0); // 组件彼此的间距
gbc.gridx = 1;
gbc.gridy = 1;
gbc.gridwidth = 1;
gbc.ipadx = 0; // 组件内部填充空间,即给组件的最小宽度添加多大的空间
gbc.ipady = 0; // 组件内部填充空间,即给组件的最小高度添加多大的空间
gridbag.setConstraints(jb, gbc);
c.add(jb);
jta.setText("这里输出内容,可以往下拉");
gbc.insets = new Insets(10, 0, 0, 0); // 组件彼此的间距
gbc.gridx = 0;
gbc.gridy = 3;
gbc.gridwidth = GridBagConstraints.REMAINDER;
jsp.setViewportView(jta);
gridbag.setConstraints(jsp, gbc);
c.add(jsp);
this.pack();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setResizable(false);
this.setVisible(true);
}
public static void main(String[] args) {
new TextFile();
}
}
有什么其他要问的,你可以百度hi我!
还是我来给你说吧,你最好是在你的类中声明一个变量,JTextArea jt=new JTextArea("");
然后你的矩形框选择好之后(双击选择),双击事件的代码中写 (如果直接就是窗口)this.add(jt);
jt.setLocation(100,200);jt.setsize(50,30);
这样就可以出现了,
如果是要删除,那应该是this.remove(jt);
当然一个比较好的方法是你事先添加进去,然后jt.setvisible(false),用的时候设置为可见,就是true,用完之后再设置为false,当然你再次使用的时候先要清空jt。
文本框.setBounds(10,10,30,170) 设置位置。
文本框的宽是改不了的,只有长度才能改变,JTextField jtf = new JTextField(length);
length大了,文本框就长了。
想要长宽可变的文本框可用:JTextArea jta = new JTextArea(长,宽);
JTextArea jta = new JTextArea(长,宽); 也是用jta.setText(); 来显示的;
与JTextField用法几乎一样;具体用法可查API。
代码如下:
1.//核心代码第一部分, 设置文本框,密码框长宽;
2.wbk = new JTextField(8);//在这个窗口大小里,设置长度为8,比较合适;
3.mmk = new JPasswordField(8);//密码框也设置长度为8;
4.//核心代码第二部分, 把文本框,密码框等加入到JPanel里;
5.JPanel jpwbk = new JPanel();//1 放文本框的JPanel面板;
6.jpwbk.add(wbk);//把文本框放入;
7.p[0].add(jpwbk);//把JPanl放入网格布局里; 8.JPanel jpbutton0 = new JPanel();//2 放按钮的JPanel面板(按钮也小点好看点); 9.jpbutton0.add(button[0]);
10.jp[0].add(jpbutton0);
11.jp[0].add(biaoqian[2]);
12.JPanel jpmmk = new JPanel();//3 放密码框的JPanel面板
13.jpmmk.add(mmk);
14.jp[0].add(jpmmk);