我正在尝试创建一个GUI,我将有2个按钮。 “开始”按钮将触发我的python脚本并显示移动图形。当我按下停止按钮时,图表应该退出并且python应该停止。
当我点击开始按钮时,我得到了所需的结果。但它进入无限循环并且停止按钮不会退出代码。单击停止按钮不会将代码带到装饰器并且我的函数stop()不会被执行。
以下是摘录:
<!DOCTYPE html>
<html>
<title>HOME PAGE..</title>
<body>
<h1>Home Page..!!</h1>
<form action="/plot" method="POST">
<input type="number" name="Number" ><br>
<br>
<input type="submit" value="Start" >
</form>
<form action="/stop" method="POST">
<br>
<input type="submit" value="Stop" >
</form>
</body>
</html>
</form>
</body>
</html>
我想退出的功能没有被调用。
以下是我的HTML:
create or replace type "GT_OBJECT_TYPE_REL_IDS" as object (OBJECT_ID number, OBJECT_TYPE varchar2(64));
/
create or replace type "T_OBJECT_TYPE_REL_IDS" as table of "GT_OBJECT_TYPE_REL_IDS";
/
VARIABLE CURS REFCURSOR;
/
DECLARE
v_OBJECT_TYPE_REL_IDS T_OBJECT_TYPE_REL_IDS;
BEGIN
--Explicit Constructor
SELECT GT_OBJECT_TYPE_REL_IDS (10, 'STUDENT')
BULK COLLECT INTO v_OBJECT_TYPE_REL_IDS
FROM DUAL;
SELECT GT_OBJECT_TYPE_REL_IDS (11, 'COLLEGE')
BULK COLLECT INTO v_OBJECT_TYPE_REL_IDS
from DUAL;
OPEN :curs FOR SELECT * FROM TABLE (v_OBJECT_TYPE_REL_IDS);
end;
/
PRINT :CURS
答案 0 :(得分:0)
您的Flask应用无法响应您的输入,因为它在您的循环中忙碌。 您需要将结果的计算放在单独的Thread或Coroutine中,以阻止它阻止您的主Flask线程。
您还可以使用Websockets与前端进行通信。看看Flask-SocketIO。它使用Websockets在Flask和您的前端之间进行通信。