怎么用java寫一個(gè)窗體程式?
創(chuàng)新互聯(lián)公司主要從事網(wǎng)頁(yè)設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、響應(yīng)式網(wǎng)站、程序開發(fā)、網(wǎng)站優(yōu)化、微網(wǎng)站、小程序開發(fā)等,憑借多年來(lái)在互聯(lián)網(wǎng)的打拼,我們?cè)诨ヂ?lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了豐富的做網(wǎng)站、成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷經(jīng)驗(yàn),集策劃、開發(fā)、設(shè)計(jì)、營(yíng)銷、管理等多方位專業(yè)化運(yùn)作于一體。
下面介紹如何用簡(jiǎn)單的幾句話在eclipse環(huán)境下出現(xiàn)一個(gè)視窗。
首先寫一個(gè)frame類,繼承Frame,是繼承widows 然后把,出現(xiàn)視窗的語(yǔ)句封裝成一個(gè)函式
public void lunchFrame(){
this.setLocation(0,0);
this.setSize(20,20);
setVisible(True); ?一定要寫這句話
}
最后只需要在主函式里面呼叫就可以
Java是一門面向物件程式語(yǔ)言,不僅吸收了C++語(yǔ)言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指標(biāo)等概念,因此Java語(yǔ)言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征。Java語(yǔ)言作為靜態(tài)面向物件程式語(yǔ)言的代表,極好地實(shí)現(xiàn)了面向物件理論,允許程式設(shè)計(jì)師以優(yōu)雅的思維方式進(jìn)行復(fù)雜的程式設(shè)計(jì) 。
Java具有簡(jiǎn)單性、面向物件、分散式、健壯性、安全性、平臺(tái)獨(dú)立與可移植性、多執(zhí)行緒、動(dòng)態(tài)性等特點(diǎn) 。Java可以編寫桌面應(yīng)用程式、Web應(yīng)用程式、分散式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程式等。
怎么用c#寫一個(gè)程式讓一個(gè)標(biāo)簽繞窗體走一圈
這個(gè)功能很奇葩,樓主說(shuō)的是窗體應(yīng)用程式么?如果是的話,這是原始碼。
怎么用JAVA寫一個(gè)使用者登入程式
同意樓上的說(shuō)法,具體點(diǎn)可以這樣:建立一個(gè)使用者表,里邊包括LoginName(登入名),UserName(使用者名稱),Password(密碼),Age(年齡),Address(地址)。然后編寫Java程式(用MVC架構(gòu))模型層(M):DBConnection.java(負(fù)責(zé)連線資料庫(kù))
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.*;
public class DBConnection {
private static final String DRIVER_CLASS = "sun.jdbc.odbc.JdbcOdbcDriver";
private static final String DB_URL = "jdbc:odbc:text";
public DBConnection() {
}
public static Connection getConnection() {
Connection conn = null;
try {
Class.forName(DRIVER_CLASS);
conn = DriverManager.getConnection(DB_URL);
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
return conn;
}
}
第2個(gè)負(fù)責(zé)資料庫(kù)查詢操作的類:DBUserManager.java
import edu.sys.text.model.entity.User;
import edu.sys.text.model.dao.DBConnection;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.DriverManager;
import java.sql.*;
public class DBUserManager {
private static final String SQL_SELECT =
"SELECT LoginName,UserName,PassWord,Age,Address FROM UserInfo WHERE LoginName = ? AND PassWord = ?";
public DBUserManager() {
}
public boolean checkDB(User u) {
boolean b = false;
Connection conn = null;
PreparedStatement p *** t = null;
ResultSet rs = null;
conn = DBConnection.getConnection();
try {
p *** t = conn.prepareStatement(SQL_SELECT);
p *** t.setString(1, u.getLoginName());
p *** t.setString(2, u.getPassWord());
rs = p *** t.executeQuery();
b = rs.next();
if (rs.next()) {
b = true;
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} finally {
cleanDB(rs, p *** t, conn);
}
return b;
}
public User checkBC(User u) {
Connection conn = null;
PreparedStatement p *** t = null;
ResultSet rs = null;
User tmp = new User();
conn = DBConnection.getConnection();
try {
p *** t = conn.prepareStatement(SQL_SELECT);
p *** t.setString(1, u.getLoginName());
p *** t.setString(2, u.getPassWord());
rs = p *** t.executeQuery();
if (rs.next()) {
tmp.setLoginName(rs.getString(1));
tmp.setUserName(rs.getString(2));
tmp.setAge(rs.getInt(4));
tmp.setAddress(rs.getString(5));
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
} finally {
cleanDB(rs, p *** t, conn);
}
return tmp;
}
public void cleanDB(ResultSet rs, PreparedStatement p *** t, Connection conn) {
try {
if (rs != null) {
rs.close();
}
if (p *** t != null) {
p *** t.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException ex) {
System.out.println(ex.getMessage());
}
}
第3個(gè)實(shí)體使用者類:User.java
package edu.sys.text.model.entity;
public class User {
private String loginName;
private String userName;
private String passWord;
private int age;
private String address;
public User() {
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public void setAge(int age) {
this.age = age;
}
public void setAddress(String address) {
this.address = address;
}
public String getLoginName() {
return loginName;
}
public String getUserName() {
return userName;
}
public String getPassWord() {
return passWord;
}
public int getAge() {
return age;
}
public String getAddress() {
return address;
}
}
然后編寫控制層(C):GetInfoServlet.java
package edu.sys.text.control;
import javax.servlet.*;
import javax.servlet..*;
import java.io.*;
import java.util.*;
import edu.sys.text.model.entity.User;
import edu.sys.text.model.service.UserManager;
public class GetInfoServlet extends HttpServlet {
private static final String CONTENT_TYPE = "text/; charset=GBK";
Initialize global variables
public void init() throws ServletException {
}
Process the HTTP Get request
public void doGet(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
}
Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String loginName = request.getParameter("loginName");
String passWord = request.getParameter("passWord");
User u = new User();
u.setLoginName(loginName);
u.setPassWord(passWord);
UserManager m = new UserManager();
RequestDispatcher d;
if (m.checkUser(u)) {
User o = m.checkBC(u);
request.setAttribute("JavaBEAN",o);
d = request.getRequestDispatcher("GetInfoUser.jsp");
} else {
d = request.getRequestDispatcher("GetInfoFinale.jsp");
}
d.forward(request, response);
}
Clean up resources
public void destroy() {
}
}
最后,建立表示層(V):包括3個(gè)Jsp(登入頁(yè)面GetInfo.jsp、登入成功頁(yè)面GetInfoUser.jsp、登入失敗頁(yè)面GetInfoFinale.jsp)
上面的就是Jsp結(jié)合Servlet用MVC架構(gòu)寫的使用者登入程式。
用java編寫一個(gè)窗體資料輸入比較程式
使用畫圖功能,關(guān)于比較那是很簡(jiǎn)單的邏輯
JFrame frame = new JFrame("XXX");
ShootGame game = new ShootGame(); 面板物件
frame.add(game); 將面板新增到JFrame中
frame.setSize(WIDTH, HEIGHT); 設(shè)定大小
frame.setAlwaysOnTop(true); 設(shè)定其總在最上
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 預(yù)設(shè)關(guān)閉操作
frame.setIconImage(new ImageIcon("images/icon.jpg").getImage()); 設(shè)定窗體的圖示
frame.setLocationRelativeTo(null); 設(shè)定窗體初始位置
frame.setVisible(true); 盡快呼叫paint
game.action(); 啟動(dòng)執(zhí)行
怎么用java寫一個(gè)tomcat的啟動(dòng),停止程式
可以利用Runtime類,Runtime用于別是虛擬機(jī)器執(zhí)行時(shí)的狀態(tài),它用于封裝JVM虛擬機(jī)器程序。
看看,我給你寫個(gè)程式碼:
public class Run {
public static void main(String[] args) throws Exception {
Runtime run=Runtime.getRuntime();
Process process=run.exec("Tomcat.exe");
Thread.sleep(3000);
process.destroy();
}
}
如題,寫一個(gè)小程式,用swing介面的桌面應(yīng)用程式就行,用來(lái)啟動(dòng)、停止tomcat伺服器,啟動(dòng)后不顯示那個(gè)cmd視窗
怎么用vc++寫一個(gè)登陸的視窗程式
哥連資料庫(kù)不?ado還是odbc?什么資料庫(kù)?
怎么用JAVA來(lái)寫一個(gè)小游戲程式
首先你應(yīng)該要具備程式設(shè)計(jì)的基礎(chǔ)知識(shí)水平,利用Elicpse等軟體來(lái)寫程式碼,既而來(lái)實(shí)現(xiàn)相應(yīng)的功能,也可以用VC++等來(lái)實(shí)現(xiàn)圖形化介面設(shè)計(jì)呢。
下面介紹如何用簡(jiǎn)單的幾句話在eclipse環(huán)境下出現(xiàn)一個(gè)窗口。
首先寫一個(gè)frame類,繼承Frame,是繼承widows 然后把,出現(xiàn)窗口的語(yǔ)句封裝成一個(gè)函數(shù)
public void lunchFrame(){
this.setLocation(0,0);
this.setSize(20,20);
setVisible(True); ?//一定要寫這句話
}
最后只需要在主函數(shù)里面調(diào)用就可以
Java是一門面向?qū)ο缶幊陶Z(yǔ)言,不僅吸收了C++語(yǔ)言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語(yǔ)言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征。Java語(yǔ)言作為靜態(tài)面向?qū)ο缶幊陶Z(yǔ)言的代表,極好地實(shí)現(xiàn)了面向?qū)ο罄碚摚试S程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程 。
Java具有簡(jiǎn)單性、面向?qū)ο蟆⒎植际?、健壯性、安全性、平臺(tái)獨(dú)立與可移植性、多線程、動(dòng)態(tài)性等特點(diǎn) 。Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。
首先,繪制一個(gè)默認(rèn)的窗體,創(chuàng)建好工程,包,類,命名類為Window.很簡(jiǎn)單,在類中添加一個(gè)私有屬性JFrame,這么寫:private JFrame f = new JFrame("歡迎來(lái)到本自助銀行");Window的構(gòu)造方法中,只寫?f.setVisible(true);以及窗體的初始位置和初始大?。篺.setLocation(300, 200);f.setSize(800, 500);
然后在同一個(gè)構(gòu)造函數(shù)中跟進(jìn)一行f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);此為設(shè)置關(guān)閉圖標(biāo)即退出程序緊接著,寫f.setResizable(false);此為設(shè)置不可更改窗體大小。如圖,的確沒(méi)辦法更改了。
最后,便是畫龍點(diǎn)睛的一筆,給窗體添加一個(gè)圖標(biāo),顯得更專業(yè)了一些:f.setIconImage(Toolkit.getDefaultToolkit().createImage("E:\\a.jpg"));
這里有一點(diǎn)比較重要,重申一句。構(gòu)造器中的設(shè)置比靜態(tài)屬性初始化設(shè)置更有直接影響力。而且,程序是執(zhí)行向上覆蓋的。也就是說(shuō),如果之后有過(guò)更改,那么更改之后就顯示更改后的結(jié)果,比如,在這個(gè)構(gòu)造函數(shù)中再寫f.setTitle("好好活著");那么,請(qǐng)注意窗體的文字。如圖:
如果是要進(jìn)行AWT或者Swing編程需要將類打包成可運(yùn)行的jar包或者通過(guò)工具將jar包打包成exe文件,然后點(diǎn)擊就可以直接運(yùn)行了。下面是一個(gè)簡(jiǎn)單的登錄窗口例子:
效果圖:
代碼:
import?java.awt.*;
import?java.awt.event.*;
public?class?TestTextField?implements?ActionListener{
TextField?name;
TextField?password;
public?static?void?main(?String?args[])?{
TestTextField?ttf?=?new?TestTextField();
ttf.createUI();
}
public?void?createUI(){
Frame?f?=?new?Frame("登錄界面");
f.add(new?Label("請(qǐng)輸入您的用戶信息:"),"North");
Panel?p1?=?new?Panel();
p1.setLayout(new?BorderLayout());?????
Panel?p11?=?new?Panel();
p11.setLayout(new?GridLayout(2,1));
p11.add(new?Label("用戶名:"));
p11.add(new?Label("密??碼:"));????
Panel?p12?=?new?Panel();
p12.setLayout(new?GridLayout(2,1));
name?=?new?TextField(10);
name.addActionListener(this);
password?=?new?TextField(10);
password.setEchoChar('*');
password.addActionListener(this);
p12.add(name);
p12.add(password);?????
p1.add(p11,"West");
p1.add(p12,"Center");
Panel?p2?=?new?Panel();????
Button?submit?=?new?Button("提交");
Button?reset?=?new?Button("重置");
submit.addActionListener(this);
reset.addActionListener(this);
p2.add(submit);
p2.add(reset);
f.add(p1,"Center");
f.add(p2,"South");
f.addWindowListener(new?WindowAdapter(){
public?void?windowClosing(WindowEvent?e){
System.exit(0);
}??
});??
f.setSize(200,130);
f.setLocation(300,200);
f.setVisible(?true);
}
public?void?actionPerformed(ActionEvent?e){
String?s?=?e.getActionCommand();
if(s.equals("重置")){
this.clear();
}else?if(s.equals("提交")?||?(e.getSource()==name)?||?(e.getSource()==password)){
this.submit();?
}??????????
}??
public?void?clear(){
name.setText("");
password.setText("");??
}
public?void?submit(){
String?n?=?name.getText();
String?psw?=?password.getText();
System.out.println("用戶名:"?+?n?+?"\t密碼:"?+?psw);??
}
}
更多關(guān)于窗口的編寫請(qǐng)查看: