導航:首頁 > 編程語言 > java模態窗口

java模態窗口

發布時間:2022-05-08 13:02:48

java如何實現模式窗體

setModel(true)
不好意思,這個好像是JDialog的方法,你一定要用JFrame嗎?
用JDialog也可以啊

Ⅱ java關閉模態對話框

比如JDialog jDialog;
那麼調用jDialog.dispose()來關閉此窗口(釋放資源)。

Ⅲ 如何用Java script寫模式窗體

a.html 內容如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> A </TITLE>
<script language="javaScript">
function change(){
var value = window.showModalDialog("b.html",document);
if(value!=""){
alert(value);
}
}
</script>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<input type="text" id="username" readonly="1">
<input type="button" onClick="change()" value="查找">
</BODY>
</HTML>

----------------偶是分割線------------------

b.html內容如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<base target="_self">
<TITLE> B </TITLE>
<script language="javaScript">
window.returnValue="這個是從B.html返回的值";
function change(){
var doc = window.dialogArguments;
var username = document.getElementById("busername").value;
<!--這里是在用a.html的doc對象操作a頁面中的文本框-->
doc.getElementById("username").value = username;
window.close();
}
</script>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD>

<BODY>
<!--這里還能用table等,獲取跟多的信息(比如雙擊單元格獲取單元格裡面的值)-->
<input type="text" id="busername"/>
<input type="button" onClick="change()" value="確定">
</BODY>
</HTML>

----------------偶是分割線------------------
參考資料

基本介紹:
showModalDialog() (IE 4+ 支持)
showModelessDialog() (IE 5+ 支持)
window.showModalDialog() 方法用來創建一個顯示HTML內容的模態對話框。
window.showModelessDialog() 方法用來創建一個顯示HTML內容的非模態對話框。
使用方法:
vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures])
vReturnValue = window.showModelessDialog(sURL [, vArguments] [,sFeatures])
參數說明:
sURL -- 必選參數,類型:字元串。用來指定對話框要顯示的文檔的URL。
vArguments -- 可選參數,類型:變體。用來向對話框傳遞參數。傳遞的參數類型不限,包括數組等。對話框通過window.dialogArguments來取得傳遞進來的參數。
sFeatures -- 可選參數,類型:字元串。用來描述對話框的外觀等信息,可以使用以下的一個或幾個,用分號「;」隔開。
----------------
1. dialogHeight: 對話框高度,不小於100px
2. dialogWidth: 對話框寬度。
3. dialogLeft: 離屏幕左的距離。
4. dialogTop: 離屏幕上的距離。
5. center: { yes | no | 1 | 0 } : 是否居中,默認yes,但仍可以指定高度和寬度。
6. help: {yes | no | 1 | 0 }: 是否顯示幫助按鈕,默認yes。
7. resizable: {yes | no | 1 | 0 } [IE5+]: 是否可被改變大小。默認no。
8. status: {yes | no | 1 | 0 } [IE5+]: 是否顯示狀態欄。默認為yes[ Modeless]或no[Modal]。
9. scroll: { yes | no | 1 | 0 | on | off }:是否顯示滾動條。默認為yes。

下面幾個屬性是用在HTA中的,在一般的網頁中一般不使用。
10. dialogHide:{ yes | no | 1 | 0 | on | off }:在列印或者列印預覽時對話框是否隱藏。默認為no。
11. edge:{ sunken | raised }:指明對話框的邊框樣式。默認為raised。
12. unadorned:{ yes | no | 1 | 0 | on | off }:默認為no。

參數傳遞:
1. 要想對話框傳遞參數,是通過vArguments來進行傳遞的。類型不限制,對於字元串類型,最大為4096個字元。也可以傳遞對象,例如:
-------------------------------
parent.htm
<script>
var obj = new Object();
obj.name="51js";
window.showModalDialog("modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");
</script>
modal.htm
<script>
var obj = window.dialogArguments
alert("您傳遞的參數為:" + obj.name)
</script>
-------------------------------
2. 可以通過window.returnValue向打開對話框的窗口返回信息,當然也可以是對象。例如:
------------------------------
parent.htm
<script>
str =window.showModalDialog("modal.htm",,"dialogWidth=200px;dialogHeight=100px");
alert(str);
</script>
modal.htm
<script>
window.returnValue="http://www..com";
</script>

Ⅳ JAVA模態窗體

showdialog, 模式窗體只能對當前窗體進行操作,當前窗體必須有應答才有下一步的動作

Ⅳ java模態窗口

好像有個setModal(true),這個方法,不記得了,好久不用java做桌面應用了,桌面應用不是java的菜

Ⅵ JAVA SWING 用了JDialog的模態窗口後,為什麼監聽器沒反應了

你的意思是作為單獨窗口時可以運行,作為彈出窗口時會有問題?我覺得是父界面裡面那個負責彈出JDialog窗口的按鈕有問題,你仔細看看那個按鈕的監聽器,是不是在彈出JDialog之後又在做一個很耗時間的事情,或者在做等待JDialog結束的事,而JDialog里的事件處理必須等到這個函數結束之後才能進行,因而發生了死鎖。

一般來說這樣寫就行了
void actionPerformed(..) {
JDialog d = new JDialog(frame, true);
d.setVisibale(true);
}
如果你做了更多的事,就要好好檢查一下。

郁悶,我給的答案又顯示不了,只要匿名再回答一次。

Ⅶ 急急急!! java 新建了一個jFrame窗體和一個模態Dialog ,jFrame裡面有個表

假設JFrame中的表格為JTable myTable;

則對話框可以這樣創建:

classMyDlgextendsJDialog{
MyDlg(JTableaTable){
introw=aTable.getSelectedRow();//獲取選中行
intcol=0;
System.out.println("["+row+","+col+"]="+aTable.getValueAt(row,col));
}
}

Ⅷ 【求助】如何在Java裡面關閉模態窗口

模態窗口顯示後,必須要在模態窗口裡才能關閉,因為它顯示後,程序就停止在的那句話上,就是停止在SetVisible
,控制權到了dlg里,必須給dlg編程來關閉

Ⅸ java.swing中的JDialog類的問題

關於模態對話框和非模態對話框的解釋:

模態對話框(Modal Dialogue Box,又叫做模式對話框),是指在用戶想要對對話框以外的應用程序進行操作時,必須首先對該對話框進行響應。一般來說,Windows應用程序中,對話框分為模態對話框和非模態對話框兩種。二者的區別在於當對話框打開時,是否允許用戶進行其他對象的操作。

參考代碼

importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
//窗口類
{

JButtonjb1,jb2;

publicMyFrame(){
jb1=newJButton("模態對話框");
jb1.addActionListener(this);
jb2=newJButton("非模態對話框");
jb2.addActionListener(this);

JPaneljp=newJPanel();
jp.add(jb1);
jp.add(jb2);
add(jp,BorderLayout.NORTH);

setTitle("窗口");//窗口標題
setSize(300,200);//窗口大小
setLocationRelativeTo(null);//居中
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//當點擊窗口右上角的關閉按鈕時,退出虛擬機,結束

}

publicstaticvoidmain(String[]args){
MyFramemf=newMyFrame();
mf.setVisible(true);
}

@Override
publicvoidactionPerformed(ActionEvente){
JButtonjb=(JButton)e.getSource();
//判斷按鈕是哪一個被點擊了
if(jb1==jb){
MyDialogmd1=newMyDialog(this,"模態對話框");
md1.setModal(true);//設置為模態窗口
md1.setVisible(true);//對話框可見
}elseif(jb2==jb){
MyDialogmd2=newMyDialog(this,"非模態對話框");
md2.setVisible(true);
}
}
}

//對話框類
classMyDialogextendsJDialog{
publicMyDialog(Frameowner,Stringtitle){
super(owner,title);//調用JDialog父類的構造方法
//JDialog(Dialogowner,Stringtitle)
//創建一個具有指定標題和指定所有者的對話框。
JLabeljl=newJLabel("彈出的窗口");
add(jl);
setSize(200,120);//大小
//setModal(true);//設置為模態
setLocationRelativeTo(null);//居中
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);//當點擊對話框右上角的關閉按鈕時,銷毀該對話框
}
}

效果圖

Ⅹ 問下各位大神,在java編寫的程序中點擊菜單欄的一個菜單項,比如在格式菜單下的字體和顏色,彈出一個窗口

你說的是打開非模態對話框。

如果模態對話框不關閉,無法操作主窗體。如果非模態對話框不關閉,仍然可以操作主窗體。

//構造模態對話框

final Dialog d = new Dialog(this, "模態對話框", true);

//構造非模態對話框

final Dialog d = new Dialog(this, "模態對話框", false);


樣常式序如下:

importjava.awt.Dialog;
importjava.awt.FlowLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.WindowAdapter;
importjava.awt.event.WindowEvent;
importjavax.swing.JButton;
importjavax.swing.JFrame;

{
JButtonbtnModel,btnNonModel;

publicMain(){
super("對話框");
this.setLayout(newFlowLayout());

btnModel=newJButton("打開模態對話框");
btnNonModel=newJButton("打開非模態對話框");

this.add(btnModel);
this.add(btnNonModel);

btnModel.addActionListener(this);
btnNonModel.addActionListener(this);

this.setSize(200,200);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

publicstaticvoidmain(String[]args){
newMain();
}

@Override
publicvoidactionPerformed(ActionEventarg0){
JButtonbtn=(JButton)arg0.getSource();
if(btn==btnModel){ //打開模態對話框
finalDialogd=newDialog(this,"模態對話框",true);
d.setSize(800,600);
d.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEventevt){
d.setVisible(false);
}
});
d.setVisible(true);
}
elseif(btn==btnNonModel){ //打開非模態對話框
finalDialogd=newDialog(this,"非模態對話框",false);
d.setSize(800,600);
d.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEventevt){
d.setVisible(false);
}
});
d.setVisible(true);
}
}
}
閱讀全文

與java模態窗口相關的資料

熱點內容
cad最下面的一排命令都什麼意思 瀏覽:456
pythonimportcpp 瀏覽:850
W10的系統怎麼給U盤加密 瀏覽:370
華為手機代碼編程教學入門 瀏覽:762
和彩雲沒會員怎樣解壓 瀏覽:634
androidimageview保存 瀏覽:387
新買店鋪什麼伺服器 瀏覽:883
文件夾能直接刻錄嗎 瀏覽:493
androidxmpp刪除好友 瀏覽:969
javac哪個前景好 瀏覽:427
中華英才網app為什麼不能搜索了 瀏覽:660
伺服器域名是什麼意思 瀏覽:52
Linux導出mysql命令 瀏覽:159
無詐建鄴是什麼app 瀏覽:228
python中的雙色球 瀏覽:166
python解釋器里如何換行 瀏覽:411
python編寫格式 瀏覽:576
用python做出來的軟體 瀏覽:469
伺服器指示燈代表什麼 瀏覽:702
做一個單片機銷售需要知識 瀏覽:777