十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
于田网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联于2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
html
head
title无标题文档/title
script language="javascript"
function fsubmit(obj)
{
obj.submit();
}
function freset(obj){
obj.reset();
}
/script
/head
body bgcolor="#333333"
form id="form1" name="form1" method="post" action="conn.jsp"
table width="745" border="0" align="center"
tr
td width="100" /td
td /td
td width="104" /td
/tr
tr
td /td
td width="527" height="297" background="img/LoginBg.jpg" bgcolor="#F0F0F0"
table width="358" border="0"
tr
td width="70" height="51" /td
td width="119" /td
td width="160" /td
/tr
tr
td height="46" /td
tdfont color="#FFFFFF"用户名:/font/td
tdinput type="text" name="user" style=" width:160px" id="user" //td
/tr
tr
td height="34" /td
tdfont color="#FFFFFF"密 码:/font/td
tdinput type="password" name="pswd" style="width:160px" id="pswd" //td
/tr
tr
td height="24" /td
td /td
td /td
/tr
/table
table width="396" border="0"
tr
td width="82" height="30" /td
td width="114"img src="img/loginbutton.jpg" style="cursor:hand;" onclick="javascript:fsubmit(document.form1);"/td
td width="41" /td
td width="141"img src="img/canclebutton.jpg" style="cursor:hand;" onclick="javascript:freset(document.form1);"/td
/tr
/table /td
td /td
/tr
tr
td /td
td /td
td /td
/tr
/table
/form
/body
/html
%@ page language="java" import="java.util.*" contentType="text/html;charset=GB2312" import="java.sql.*"%
%@ page import="com.microsoft.sqlserver.jdbc.SQLServerDriver" %
%@page import="java.sql.DriverManager"%
HTML
HEAD
/HEAD
body
%
String userName=request.getParameter("user");
String Pswd =request.getParameter("pswd");
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
}
catch(ClassNotFoundException e)
{
out.print("0");
out.print(e.toString());
}
try
{
Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=RegUser","sa","123");
Statement stmt = con.createStatement();
String sql="select * from tb_user";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next())
{
if(userName.equals(rs.getString(2))Pswd.equals(rs.getString(3)))
{
rs.close();
stmt.close();
con.close();
%
jsp:forward page="index.html" /jsp:forward
%
}
}
rs.close();
stmt.close();
con.close();
%
script type="text/javascript"
if(!confirm("用户名或密码错误,是否要转入注册页"))
{
location.href="MyHtml.html";
}
else
{
location.href="Register.html";
}
/script
%
}
catch(Exception e)
{
out.print("1");
out.print(e.toString());
}
%
/body
/HTML
首先你还是弄一个新的panel 来将“确定”“取消”两个按钮重新排布好吧,由于只有两个按钮这么简单我下面的程序用GirdLayout了,
例如:JPanel panel = new JPanel();
panel.setLayout(new GridLayout(1,2));
panel.add(bw);
panel.add(bc);
然后再在你的Frame jp 里面加入这个panel,就可以了。按照你的设定就是用BorderLayout把它加到中间去吧? 北面的就是你原来做好的那些部分..(虽然不是很优化,不过先不管了...)
例如:fr.getContentPane().add("North",jp);
fr.getContentPane().add("Center",panel);
整条程序就是:(注意我改了包的名字和类的名字,你要改回来, 这里的参数也改了一下,符合我自己的审美观 : fr.setSize(450, 200); )
package src;
/**
* @author Raven Denesis
* @version 1.0
*/
import java.awt.*;
import java.awt.event.*;
import java.util.Map;
import javax.swing.*;
public class Jpassword {
private JFrame fr = new JFrame("登陆界面");
private JTextField user = new JTextField(20);
private JPasswordField pwd = new JPasswordField(10);
private JTextArea ta = new JTextArea(5,10);
private JButton bw = new JButton("确定");
private JButton bc = new JButton("取消");
Font ft = new Font ("serf",Font.BOLD,28);
JPanel jp = new JPanel (new GridLayout(2,3,10,10));
public static void main(String[] args){
Jpassword than = new Jpassword();
than.go();
}
void go(){
fr.getContentPane().setLayout(new BorderLayout(0,10));
JLabel u1 =new JLabel("用户名: ",JLabel.LEFT);
jp.add(u1);
jp.add(user);
JLabel pl = new JLabel("用户密码: ",JLabel.LEFT);
jp.add(pl);
jp.add(pwd);
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(1,2));
panel.add(bw);
panel.add(bc);
fr.getContentPane().add("North",jp);
fr.getContentPane().add("Center",panel);
u1.setFont(ft);
pl.setFont(ft);
user.setFont(ft);
pwd.setFont(ft);
//user.addActionListener(new ActionListener());
//pwd.addActionListener(new TextHandler());
fr.setSize(450, 250);
fr.setVisible(true);
fr.setLocation(200, 200);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
abstract class TextHandler implements ActionListener
{
int sel;
TextHandler(int sel)
{
this.sel = sel;
}
}
public void actionPerformed(ActionEvent e)
{
String uname,upass;
uname = user.getText();
upass = new String(pwd.getPassword());
ta.setText("用户名: "+"\n"+"密码: "+upass);
}
}
运行结果:
这样的排版你觉得还可以吧?
还有你的按钮bw和bc还没有加到.addActionListener(new ActionListener()); 里,这样的话按钮就算按下去都没反应...不过你稍后应该会加的了吧,我想就不用另行说了....
按照你的要求编写的Java的带取消的警告信息框的完整程序如下
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
public class F extends JFrame implements ActionListener{
JButton jb=new JButton("确定");
JPanel jp=new JPanel();
F(){
jb.addActionListener(this);
jp.add(jb);
add(jp);
setSize(200, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
public static void main(String[] args) {
new F();
}
@Override
public void actionPerformed(ActionEvent ae) {
if(ae.getSource()==jb){
int n=JOptionPane.showConfirmDialog(this, "跳往另一页面?", "跳转警告",JOptionPane.WARNING_MESSAGE, JOptionPane.OK_CANCEL_OPTION);
if(n==0){
FL fl=new FL();//创建新页面
this.dispose();//销毁旧页面
}
}
}
}
class FL extends JFrame{
JLabel jl=new JLabel("另一页面");
JPanel jp=new JPanel();
FL(){
jp.add(jl);
add(jp);
setSize(200, 100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
}
}
运行结果
public void initWin(){
this.setBounds(300, 300, 500, 400);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
super.windowClosing(e);
int exi = JOptionPane.showConfirmDialog (null, "确定退出?", "友情提示", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
if(exi == JOptionPane.YES_OPTION)
{
System.exit (0);
}
else
{
return;
}
}
});
layoutWin();
this.setVisible(true);
}
直接将这个函数加入到你所要退出系统的程序代码之中,虽然说这个函数有个BUG ,就是按了返回 他仍然退出系统,不过,看了代码的逻辑应该是不会出现这种情况,所以,有懂的大佬麻烦说下~~~共同学习0.0 蛤蛤