问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java中实现点击一个按钮出现一个新的页面且关闭当前页面

发布网友 发布时间:2022-05-03 00:08

我来回答

6个回答

懂视网 时间:2022-04-20 07:51

最近在使用微信、支付宝、百度钱包实现网页支付,对支付成功将自动关闭页面,对于支付失败,将显示错误信息。当在错误页面的时候,点击返回

或者Android物理按键上一步的时候,将关闭页面。

在微信、支付宝、百度钱包中,他们对页面关闭进行了封装,传统的window.close()是无效的,必须要使用它们的js代码才能关闭。下面是三种移动app

的关闭方式:

WeixinJSBridge.call('closeWindow');//微信 
 AlipayJSBridge.call('closeWebview'); //支付宝 
 BLightApp.closeWindow();//百度钱包

通过浏览器的头判断是那种浏览器:

var ua = navigator.userAgent.toLowerCase(); 
f(ua.match(/MicroMessenger/i)=="micromessenger") { 
 alert("微信客户端"); 
} else if(ua.indexOf("alipay")!=-1){ 
 alert("支付宝客户端"); 
}else if(ua.indexOf("baidu")!=-1){ 
 alert("百度客户端"); 
}

对返回、上一页、后退进行监听,并对history中放入当前页地址:

$(function(){ 
  pushHistory(); 
  window.addEventListener("popstate", function(e) { 
   
 }, false); 
  function pushHistory() { 
  var state = { 
   title: "title", 
   url: "#" 
  }; 
  window.history.pushState(state, "title", "#"); 
  } 
});

整个实现完整代码:

$(function(){ 
  pushHistory(); 
  window.addEventListener("popstate", function(e) { 
  pushHistory(); 
  var ua = navigator.userAgent.toLowerCase(); 
  if(ua.match(/MicroMessenger/i)=="micromessenger") { 
   WeixinJSBridge.call('closeWindow'); 
  } else if(ua.indexOf("alipay")!=-1){ 
   AlipayJSBridge.call('closeWebview'); 
  }else if(ua.indexOf("baidu")!=-1){ 
   BLightApp.closeWindow(); 
  } 
  else{ 
   window.close(); 
  } 
 }, false); 
  function pushHistory() { 
  var state = { 
   title: "title", 
   url: "#" 
  }; 
  window.history.pushState(state, "title", "#"); 
  } 
 });

热心网友 时间:2022-04-20 04:59

采用以下代码即可:

JButton btn=new JButton(new AbstractAction("关闭并打开") {   
   @Override
   public void actionPerformed(ActionEvent e) {
      oldFrame.dispose();// 关闭并销毁,无需销毁可采用oldFrame.setVisible(false);
      newFrame.setVisible(true);// 打开新窗口
   }
});

热心网友 时间:2022-04-20 06:17

是Web工程吗?
你可以直接跳转到某页面,不用关闭,就在当前页面显示你要跳转的目标页面就行了啊!
或者写个js方法:function ct(){
window.open("2.jsp");//这个2.jsp是你要跳转到那个页面的页面url!
window.close();
}
在按钮的onclick="ct();"属性中调用这个方法!追问是GUI里面,添加事件。我们还没学后面那么多 - -

追答GUI我也不懂!

热心网友 时间:2022-04-20 07:51

在事件里添加
JFrame f=new JFrame();//不局限于JFrame,以你自己的窗口类名自行修改
this.dispose();//关闭当前窗口
就可以了

热心网友 时间:2022-04-20 09:43

public class NewJFrame extends javax.swing.JFrame {

/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jPanel1 = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
jScrollPane2 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jScrollPane3 = new javax.swing.JScrollPane();
jTree1 = new javax.swing.JTree();
jButton1 = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jPanel1.setLayout(new java.awt.CardLayout());

jTextArea1.setColumns(20);
jTextArea1.setRows(5);
jScrollPane1.setViewportView(jTextArea1);

jPanel1.add(jScrollPane1, "card2");

jTable1.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null},
{null, null, null, null},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
jScrollPane2.setViewportView(jTable1);

jPanel1.add(jScrollPane2, "card3");

jScrollPane3.setViewportView(jTree1);

jPanel1.add(jScrollPane3, "card4");

jButton1.setText("jButton1");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(451, Short.MAX_VALUE)
.addComponent(jButton1)
.addGap(39, 39, 39))
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 563, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 264, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButton1))
);

pack();
}// </editor-fold>

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
((CardLayout)this.jPanel1.getLayout()).next(jPanel1);
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {
new NewJFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JPanel jPanel1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JScrollPane jScrollPane3;
private javax.swing.JTable jTable1;
private javax.swing.JTextArea jTextArea1;
private javax.swing.JTree jTree1;
// End of variables declaration
}

热心网友 时间:2022-04-20 11:51

JSP中的onclick可以做到
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 呼伦贝尔油玉不绝电子商务有限公司怎么样? 如何避免wps卡顿? 属鼠的男人找对象是属什么,属鼠的人和什么属相合 96年鼠的姻缘在哪年 属相相合年份运势提升 2024属鼠找对象属什么最佳 黑客攻击网站能报案吗 因为爱所以幸福初二作文600字左右,急急急急 ...某个按钮页面什么都不提示,就直接关闭当前页面,怎么实现? 爱使我更加幸运600字作文 制定市场营销组合策略有什么原则 js或者jquery。关闭当前子页面并且父页面跳转 爱,带给我幸福—初二600/700字作文 求助:js或者jquery。关闭当前子页面并且父页面跳转 jquerymobile 怎么关闭页面 jquery mobile 中怎么关闭当前页面,一个界面上有一个关闭按钮 ,点关闭就退出浏览器或者关闭浏览器? excel IF 多个条件公式该怎么写? 市场营销策划有哪些原则 WPS多条件公式? wps怎么两个IF条件 华润理想国位置在哪? wps中if函数多个判断条件,且均为包含某字符的写法 wps中if函数输入多个条件怎么用 脐带血应用的过程中有什么难点吗? 抽其带血须要多少钱? WPS if多条件,超七个如何设置? 提取脐血时应该抽取多少容量的脐血? 爱,使我( )作文 jquery ajax 我想在关闭当前窗口的时候,调用另外一个页面的按钮事件。 想知道2015年广东省语文高考作文应从哪个角度写比较好?? 作文《爱使我 ——》 怎么点击确定按钮关闭当前窗口,并返回父页面,并且父页面刷新。 2015年广东高考作文怎么写,题目点评立意审题解读 急!!急!!初中作文600字 爱使我快乐或爱使我烦恼 追加分数 jsp中关闭当前页面分几个框架 怎么关闭全部,点击一次当前这个页面关闭 营销策略有那些? 爱给我带来快乐,写一篇600字左右的作文? 点击按钮关闭当前页面刷新父页面列表,但页面不刷新 用javascript写在点击关闭网页时,弹出对话框问是否关闭页面???急等... 《爱让生活更美好》600字作文 爱使我……作文小标题式 jsp 中用js提交表单并关闭本窗口的问题 那份爱,让我半命题作文600字 点击按钮关闭窗口 爱给我带来无限的快乐,写一篇600字左右的作文? 新手求教jquery怎么处理浏览器关闭之前执行销毁session 爱,带给我快乐或者爱,带给我烦恼的作文600字