两个窗口交互

1.去SELECE的文本:document.getElementById("groupId").options[document.getElementById("groupId").selectedIndex].text;

MAIN.HTML
  ...
<SCRIPT LANGUAGE="JavaScript">

function showModalWindow() {
var uri="dialog.htm?port=???";
var windowFeatures = "dialogWidth:500px;dialogHeight:500px;center:yes";
var returnVal=window.showModalDialog(uri,null,windowFeatures);
if(returnVal) {
document.getElementById("txt1").value=returnVal;
}
}

</SCRIPT>
</HEAD>

<BODY>
<INPUT TYPE="text" name="txt1" id="txt1"/>
<INPUT TYPE="button" οnclick="showModalWindow();" value="click">
</BODY>
....
DIALOG.HTML
<SCRIPT LANGUAGE="JavaScript">
<!--
function ok() {
window.returnValue=document.getElementById("txt2").value;
window.close();
}

/*function cancel() {
window.returnValue="oldvalue";
window.close();
}

window.οnunlοad=cancel;*/
//-->
</SCRIPT>
</HEAD>

<BODY>
<INPUT TYPE="text" NAME="txt2" id="txt2">
<INPUT TYPE="button" value="ok" οnclick="ok();">
</BODY>
</HTML>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在PYQT5中,可以通过多线程和信号来实现多窗口交互。 首先,你需要创建多个窗口。每个窗口可以是一个独立的QWidget或QDialog对象。可以使用QWidget或QDialog类来创建这些窗口。每个窗口都可以有自己的UI设计和逻辑。 然后,你可以使用多线程来处理每个窗口的逻辑。可以使用QThread类来创建和管理线程。你可以在每个线程中处理特定窗口的逻辑和操作。 为了实现多窗口交互,你可以使用信号和槽机制。在每个窗口的类中定义信号,并在需要的时候发送信号。其他窗口可以连接这些信号,并在接收到信号时执行相应的操作。可以使用pyqtSignal来定义信号,并使用emit方法发送信号。 例如,你可以在一个窗口类中定义一个信号,并在另一个窗口类中连接这个信号。当第一个窗口发出这个信号时,第二个窗口就会执行与这个信号关联的槽函数。 下面是一个简单的例子来说明pyqt5多窗口交互的实现: ```python from PyQt5.QtCore import pyqtSignal, QObject from PyQt5.QtWidgets import QApplication, QWidget, QPushButton # 定义一个包含信号的类 class Window1(QWidget): signal = pyqtSignal(str) def __init__(self): super().__init__() self.initUI() def initUI(self): self.setWindowTitle("Window 1") self.setGeometry(100, 100, 300, 200) button = QPushButton("Send Signal", self) button.clicked.connect(self.sendSignal) def sendSignal(self): self.signal.emit("Hello from Window 1!") # 定义另一个窗口类 class Window2(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setWindowTitle("Window 2") self.setGeometry(500, 100, 300, 200) self.show() # 定义槽函数来接收信号 def receiveSignal(self, message): print("Received Signal:", message) # 创建应用程序并显示窗口 app = QApplication([]) window1 = Window1() window2 = Window2() # 连接信号和槽函数 window1.signal.connect(window2.receiveSignal) window1.show() app.exec_() ``` 在上面的例子中,我们创建了两个窗口类`Window1`和`Window2`。`Window1`类中定义了一个信号`signal`,并在按钮点击事件中发送这个信号。`Window2`类中定义了一个槽函数`receiveSignal`,用于接收来自`Window1`的信号。在主程序中,我们创建了这两个窗口的实例,并将`Window1`的信号连接到`Window2`的槽函数。当`Window1`发出信号时,`Window2`的槽函数会被触发,输出接收到的消息。 通过使用这种方式,你可以实现多个窗口之间的交互,并根据需要发送和接收信号来执行相关操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [PYQT5开启多个线程和窗口,多线程与多窗口交互实例](https://blog.csdn.net/xujianjun229/article/details/118560341)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值