import javax.swing.JOptionPane;
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供泰興網(wǎng)站建設(shè)、泰興做網(wǎng)站、泰興網(wǎng)站設(shè)計、泰興網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、泰興企業(yè)網(wǎng)站模板建站服務(wù),十多年泰興做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
class Test {
public static long function(int n)throws Exception{
if(n==0){
return 1;
}else{
return n*function(n-1);
}
}
public static void main(String[] args)throws Exception {
String whole=JOptionPane.showInputDialog("請輸入一個整數(shù)!");
int n=0;
long l=0;
try{
n=Integer.parseInt(whole);
if(n1)
throw new NumberFormatException();
}catch(NumberFormatException e){
JOptionPane.showMessageDialog(null, "您輸入的不是一個正整數(shù)!");
}
l= function(n);
JOptionPane.showMessageDialog(null,l);
}
}
給一個登錄的,不錯,我用的
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
/*
APPLET
CODE=dialoginput.class
WIDTH=300
HEIGHT=200
/APPLET
*/
public class dialoginput extends JApplet implements ActionListener
{
JLabel top=new JLabel("Welcome to cn-java net !");
JButton display=new JButton("會員登錄");
JLabel welcomeword=new JLabel(" 您還沒有登錄 ");
JLabel title=new JLabel(" 登 錄 窗 口 "),
name=new JLabel("會員名:"),
password=new JLabel("密碼:");
JTextField inputname=new JTextField(12);
JPasswordField inputpassword=new JPasswordField(12);//與AWT不同的是,Swing有一個用于口令的特殊控件,就是JPasswordField
JButton ok=new JButton("確定"),
cancel=new JButton("放棄");
private JDialog dialog=new JDialog((Frame)null,"登錄",true);
public void init()
{
Container contentPane=getContentPane();
Container dialogContentPane=dialog.getContentPane();
JPanel p=new JPanel();
contentPane.setLayout(new GridBagLayout());
GridBagConstraints gbc=new GridBagConstraints();
gbc.gridy=0;
contentPane.add(top,gbc);
gbc.gridx=GridBagConstraints.RELATIVE;
gbc.gridy=1;
contentPane.add(display,gbc);
gbc.gridx=GridBagConstraints.RELATIVE;
gbc.gridy=2;
contentPane.add(welcomeword,gbc);
dialogContentPane.setLayout(new GridBagLayout());
GridBagConstraints gbb=new GridBagConstraints();
gbb.gridx=1;
gbb.gridy=0;
dialogContentPane.add(title,gbb);
gbb.gridx=GridBagConstraints.RELATIVE;
gbb.gridy=1;
dialogContentPane.add(name,gbb);
dialogContentPane.add(inputname,gbb);
gbb.gridx=GridBagConstraints.RELATIVE;
gbb.gridy=2;
dialogContentPane.add(password,gbb);
dialogContentPane.add(inputpassword,gbb);
inputpassword.setEchoChar('*');
gbb.gridx=GridBagConstraints.RELATIVE;
gbb.gridy=3;
p.setLayout(new FlowLayout());
p.add(ok);
p.add(cancel);
gbb.gridx=1;
gbb.gridy=4;
dialogContentPane.add(p,gbb);
display.addActionListener(this);
ok.addActionListener(this);
cancel.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==display){
dialog.setBounds(200,200,300,200);
dialog.show();
}else if(e.getSource()==ok){
welcomeword.setText("您好,"+inputname.getText()+",歡迎光臨中文Java技術(shù)網(wǎng)!");
}else if(e.getSource()==cancel){
welcomeword.setText("你沒有輸入!");
}
dialog.setVisible(false);
}
}
我給你寫個方法,你可以比著葫蘆畫個瓢,好吧、
注:在編寫這樣的小窗口時要主要幾點
1、在構(gòu)造函數(shù)里設(shè)置窗體的(位置和)大小,用this.setBounds(int x,int y,int width,int height);實現(xiàn)
2、設(shè)置窗體的可見性,一般這句代碼寫在構(gòu)造函數(shù)的末尾,用this.setVisible(true);實現(xiàn),少了這句代碼,窗體是看不到的
3、這一點對于非常簡單的窗體不是滿重要,用this.SetDefaultCloseOperation(EXIT_ON_CLOSE);設(shè)置當(dāng)點擊窗體的"*"(差,退出按鈕時),退出程序,少了這句代碼,程序默
認(rèn)是隱藏窗體。
*******************************************************************************************
package com.xpsoft.swingtest;//導(dǎo)入包
import java.awt.Color;//導(dǎo)入標(biāo)題欄的Icon圖片包
import javax.swing.*;//導(dǎo)入JFrame所在的包
import java.awt.FlowLayout;//導(dǎo)入布局管理器包(初學(xué)者可以暫時不做關(guān)注)
public class Swing1 extends JFrame{
/**
* @param args
*/
public Swing1(){//無參構(gòu)造函數(shù)
this.setTitle("我的第一個Frame");
this.setLayout(null);//可以暫時設(shè)為Null布局:new FlowLayout()
this.setBounds(450,150,500,400);//沒有這一步,窗體默認(rèn)最小化,在電腦屏幕的左上角處
this.setResizable(false);//禁止修改Frame的大?。梢圆辉O(shè)置)
//this.setUndecorated(true);//去掉窗體的邊框和標(biāo)題欄
this.setVisible(true);//把窗體設(shè)為可以(非常重要)
//關(guān)閉窗體時執(zhí)行的4種操作
this.setDefaultCloseOperation(EXIT_ON_CLOSE);//關(guān)閉該窗體
/*this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);//不做任何操作
this.setDefaultCloseOperation(HIDE_ON_CLOSE);//隱藏窗體(默認(rèn))
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);//釋放窗體對象*/
}
public static void main(String[] args) {
Swing1 s=new Swing1();
/*JFrame frame=new JFrame();
frame.setTitle("直接使用JFrame創(chuàng)建窗體");
frame.setBounds(450,150,500,400);
frame.setVisible(true);*/
}
}
**************************************************************
希望能夠?qū)δ阌兴鶐椭?/p>
用C語言實現(xiàn)就比較復(fù)雜了,首先你要有C語言的基礎(chǔ),在這之上你可以寫一些沒有界面的邏輯性代碼,假如你想要學(xué)習(xí)寫界面,很悲催的告訴你,你需要學(xué)一個MFC的東西,這個東西就是用C,C++實現(xiàn)界面程序的,它是C++的一個類庫,然后你要用它寫出一個界面,你還需要一個不是特別容易的學(xué)習(xí)過程;
總之MFC是屬于比較過時,復(fù)雜的東西了;
而java相對來說就特別容易了,樓上提到的C#,我覺得和java差不多。
jframe.setVisible(true) 即可讓窗口可見.
API里關(guān)于該方法的說明
public void setVisible(boolean?b)
根據(jù)參數(shù) b 的值顯示或隱藏此 Window。
窗口的其他常用屬性的設(shè)置,詳細(xì)見下面的例子
示例圖
參考代碼和詳細(xì)的注釋
import?java.awt.Color;
import?java.awt.Font;
import?javax.swing.JFrame;
import?javax.swing.JLabel;
public?class?MyFrame?extends?JFrame?{
//構(gòu)造函數(shù)
public?MyFrame()?{
JLabel?jl?=?new?JLabel("床前明月光,疑是地上霜。",JLabel.CENTER);//文字標(biāo)簽,文字居中
jl.setForeground(Color.BLUE);//文字的顏色
jl.setFont(new?Font("仿宋",?Font.BOLD,?20));//設(shè)置文字,字體
add(jl);//把文字添加到窗口
//getContentPane().setBackground(Color.WHITE);?//設(shè)置窗口(內(nèi)容面板)的背景顏色
setTitle("窗口示例");//?窗口標(biāo)題
setSize(300,?200);//?窗口大小?寬300?高200
setLocationRelativeTo(null);//?窗口居中
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//?當(dāng)窗口關(guān)閉時,程序結(jié)束
}
//main函數(shù)
public?static?void?main(String[]?args)?{
MyFrame?frame?=?new?MyFrame();//?創(chuàng)建窗口
frame.setVisible(true);//?讓該窗口實例可見
}
}