寫了一個(gè)很簡(jiǎn)單的案例,可以參考和修改
創(chuàng)新互聯(lián)專注骨干網(wǎng)絡(luò)服務(wù)器租用十載,服務(wù)更有保障!服務(wù)器租用,四川雅安服務(wù)器托管 成都服務(wù)器租用,成都服務(wù)器托管,骨干網(wǎng)絡(luò)帶寬,享受低延遲,高速訪問。靈活、實(shí)現(xiàn)低成本的共享或公網(wǎng)數(shù)據(jù)中心高速帶寬的專屬高性能服務(wù)器。
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個(gè)文本框");
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("測(cè)試");
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);
}
/**
* 根據(jù)地址來保存文件
*
* @param dir
* 文件地址
*/
private void Save(String dir) {
BufferedImage image = bi;
// 得到系統(tǒng)支持的圖片寫入器
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");
}
}
給的分有點(diǎn)少了,看看效果還滿意嗎?如果滿意加分??!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;//文本區(qū)
private JScrollPane jsp;
public TextFile() {
this.setTitle("頁(yè)面展示");
c = this.getContentPane();
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
this.setLayout(gridbag);
jtf = new JTextField();
jb = new JButton("BUTTON開始");
String[] city = {"下拉框列表", "中國(guó)", "美國(guó)", "英國(guó)"};
jc = new JComboBox(city);
jta = new JTextArea();
jta.setRows(10);//設(shè)置文本區(qū)列數(shù)
jsp = new JScrollPane();
gbc.anchor = GridBagConstraints.NORTH; // 當(dāng)組件沒有空間大時(shí),使組件處在北部
gbc.fill = GridBagConstraints.HORIZONTAL;;
gbc.gridx = 0;//橫坐標(biāo)
gbc.gridy = 0;//縱坐標(biāo)
gbc.gridwidth = 2;//橫占幾個(gè)網(wǎng)格
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; // 組件內(nèi)部填充空間,即給組件的最小寬度添加多大的空間
gbc.ipady = -100; // 組件內(nèi)部填充空間,即給組件的最小高度添加多大的空間
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; // 組件內(nèi)部填充空間,即給組件的最小寬度添加多大的空間
gbc.ipady = 0; // 組件內(nèi)部填充空間,即給組件的最小高度添加多大的空間
gridbag.setConstraints(jb, gbc);
c.add(jb);
jta.setText("這里輸出內(nèi)容,可以往下拉");
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我!
還是我來給你說吧,你最好是在你的類中聲明一個(gè)變量,JTextArea jt=new JTextArea("");
然后你的矩形框選擇好之后(雙擊選擇),雙擊事件的代碼中寫 (如果直接就是窗口)this.add(jt);
jt.setLocation(100,200);jt.setsize(50,30);
這樣就可以出現(xiàn)了,
如果是要?jiǎng)h除,那應(yīng)該是this.remove(jt);
當(dāng)然一個(gè)比較好的方法是你事先添加進(jìn)去,然后jt.setvisible(false),用的時(shí)候設(shè)置為可見,就是true,用完之后再設(shè)置為false,當(dāng)然你再次使用的時(shí)候先要清空jt。
文本框.setBounds(10,10,30,170) ?設(shè)置位置。
文本框的寬是改不了的,只有長(zhǎng)度才能改變,JTextField jtf = new JTextField(length);
length大了,文本框就長(zhǎng)了。
想要長(zhǎng)寬可變的文本框可用:JTextArea jta = new JTextArea(長(zhǎng),寬);
JTextArea jta = new JTextArea(長(zhǎng),寬); 也是用jta.setText(); 來顯示的;
與JTextField用法幾乎一樣;具體用法可查API。
代碼如下:
1.//核心代碼第一部分,?設(shè)置文本框,密碼框長(zhǎng)寬;
2.wbk?=?new?JTextField(8);//在這個(gè)窗口大小里,設(shè)置長(zhǎng)度為8,比較合適;
3.mmk?=?new?JPasswordField(8);//密碼框也設(shè)置長(zhǎng)度為8;
4.//核心代碼第二部分,?把文本框,密碼框等加入到JPanel里;
5.JPanel?jpwbk?=?new?JPanel();//1?放文本框的JPanel面板;
6.jpwbk.add(wbk);//把文本框放入;? ? ? ?
7.p[0].add(jpwbk);//把JPanl放入網(wǎng)格布局里; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 8.JPanel?jpbutton0?=?new?JPanel();//2?放按鈕的JPanel面板(按鈕也小點(diǎn)好看點(diǎn)); ? ? ? ? ? ? ? ? ? 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);