作者irishcafee (愛爾蘭咖啡)
看板Perl
標題[問題] perl tk 一個小問題請教
時間Fri Oct 23 17:30:01 2020
各位好,最近在練習perl tk 遇到一個回傳值的問題。
如圖所示,一個簡單的選擇檔案的按鈕,在subroutines裡選擇檔案名字後,
想要丟回主程式,繼續使用這個檔案名字的變數繼續去做事情。
不太清楚要怎麼寫,爬網頁也都只介紹元件用法,沒有寫到類似這種回傳值的問題。
有沒有強者願意幫忙指導一下,非常感謝。
我人在台北或新竹願意付一些費用,期待有好心人願意指導一下。
謝謝
https://imgur.com/SLDmhK5
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.198.49 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Perl/M.1603445403.A.D12.html
1F:→ loveyc: Tk::getOpenFile 10/24 19:26
2F:→ irishcafee: 您好,是使用tkgetopenfile指令後,已經得到檔案位址 10/25 00:19
3F:→ irishcafee: 變數後,發現檔案變數只能在subroutine裡做用,使用re 10/25 00:19
4F:→ irishcafee: turn,發現傳不回主程式,需要在主程式使用檔案變數 10/25 00:19
5F:→ flu: signal, pipeline, socket 之類, IPC 範疇的東西 10/27 19:53
7F:推 imce: 在我還菜的時候,我會把檔名寫到一個txt檔,然後主程式去讀 10/28 15:48
8F:推 LiloHuang: 你的 GUI 都有個 event loop 在跑了, 把它停掉就好了 10/31 11:17
9F:→ LiloHuang: 方法就是在 somesub 改完變數後, 呼叫 $mw->destroy(); 10/31 11:19
10F:→ LiloHuang: 自然就會跳開 MainLoop, 就會印你改過的結果了 10/31 11:20
11F:→ LiloHuang: 猜測你只是要選 DRC rule, 之後 GUI 就不需要存在了 10/31 11:21
12F:→ LiloHuang: 如果你 GUI 還得一直在, 那麼就得想辦法開 thread 10/31 11:21
13F:→ LiloHuang: 或者 child process, 把 task 丟到 background 跑 10/31 11:21