全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:912
推到 Plurk!
推到 Facebook!

串口问题

答題得分者是:st33chen
wq236589
一般會員


發表:21
回覆:37
積分:16
註冊:2008-08-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-10-14 10:34:35 IP:124.237.xxx.xxx 訂閱
我编写的程序在给串口发送数据以后外接硬件会返回一条数据。
因为从发送到返回有很长一段时间,中途不能再向外接硬件发送数据否则会出错。
我想实现:
当我点击发送按钮并发送数据以后弹出‘发送中’的提示并且程序不能再进行操作,直到收到外接硬件发回的数据‘ok’为止。我用的串口控件是spcomm哪个高手帮忙想想办法(最好详细点)
st33chen
尊榮會員


發表:15
回覆:591
積分:1201
註冊:2005-09-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-10-14 12:48:41 IP:122.116.xxx.xxx 未訂閱
您好, 無法很詳細, 但請參考

一按 發送, 立刻把發送鈕 disable, 直到收到時, 再把他 enable 起來.

===================引 用 wq236589 文 章===================
我编写的程序在给串口发送数据以后外接硬件会返回一条数据。
因为从发送到返回有很长一段时间,中途不能再向外接硬件发送数据否则会出错。
我想实现:
当我点击发送按钮并发送数据以后弹出‘发送中’的提示并且程序不能再进行操作,直到收到外接硬件发回的数据‘ok’为止。我用的串口控件是spcomm哪个高手帮忙想想办法(最好详细点)
------
IS IT WHAT IT IS
我是 李慕白 請倒著唸.
又想把老話拿出來說, 請用台語發音 : 專家專家全是ROBOT CAR (滷肉腳啦);
都已接手這麼久了, 績效還是那麼爛, 講話還那麼大聲.
wq236589
一般會員


發表:21
回覆:37
積分:16
註冊:2008-08-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-10-14 14:10:02 IP:123.181.xxx.xxx 訂閱
我想要的是点击发送以后,弹出一个像showmessage()一样的一个插件(showmessage()关闭之前什么都不能操作而且能显示文字,与showmessage()不同的是不能人为关闭只能通过代码关闭)。
是不是有这样的控件或代码啊,我曾经在一款系统垃圾清理软件上看见过一直不知道怎么实现的。
st33chen
尊榮會員


發表:15
回覆:591
積分:1201
註冊:2005-09-30

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-10-14 14:52:36 IP:122.116.xxx.xxx 未訂閱
我以為程式的重點是在沒收到 OK 前不讓使用者再按一次發送.

如果您執著於一定要有像 SHOWMESSAGE 一樣的效果, 那再參考一下

1. 新建一個 FORM(假設名為 form2) 上有一堆 MESSAGE, 並由 form2 去接收資料.
2. 當 主 FORM 按發送扭後即 SHOWMODAL 這個 form2, 並開始接收資料.
3. 當 form2 收到 OK, 下一個 close 命令.

這種情況, 有 button 好像是多餘的,
因為在接收資料期間使用者不能按, 而一收到 OK 就要關掉這個視窗, 使用者也是按不到,
那有 button 有何用?

您的需求其實風險很高的, 就是: 如果接收資料期間程式因故 HANG 住了, 使用者就只能用 alt-ctl-del 去停程式了

anyway, 參考一下

===================引 用 wq236589 文 章===================
我想要的是点击发送以后,弹出一个像showmessage()一样的一个插件(showmessage()关闭之前什么都不能操作而且能显示文字,与showmessage()不同的是不能人为关闭只能通过代码关闭)。
是不是有这样的控件或代码啊,我曾经在一款系统垃圾清理软件上看见过一直不知道怎么实现的。
------
IS IT WHAT IT IS
我是 李慕白 請倒著唸.
又想把老話拿出來說, 請用台語發音 : 專家專家全是ROBOT CAR (滷肉腳啦);
都已接手這麼久了, 績效還是那麼爛, 講話還那麼大聲.
wq236589
一般會員


發表:21
回覆:37
積分:16
註冊:2008-08-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-10-14 16:55:25 IP:123.181.xxx.xxx 訂閱
你的方法不行form上有关闭按钮,我要的效果是像Panel控件一样的弹出框,而且在弹出框关闭以前不能触发当前form上的所有事件,难道非要改Enabled属性为假?有没有别的办法。
你说的而风险不存在,我的程序在一定时间能接受不到数据就按超时处理从新发送,如果发送3次都超时就停止发送并提示发送失败
編輯記錄
wq236589 重新編輯於 2008-10-14 16:58:15, 註解 無‧
st33chen
尊榮會員


發表:15
回覆:591
積分:1201
註冊:2005-09-30

發送簡訊給我
#6 引用回覆 回覆 發表時間:2008-10-14 18:08:26 IP:122.116.xxx.xxx 未訂閱

把 form2 的 bordericons 全設為 false;


===================引 用 wq236589 文 章===================
你的方法不行form上有关闭按钮,我要的效果是像Panel控件一样的弹出框,而且在弹出框关闭以前不能触发当前form上的所有事件,难道非要改Enabled属性为假?有没有别的办法。
你说的而风险不存在,我的程序在一定时间能接受不到数据就按超时处理从新发送,如果发送3次都超时就停止发送并提示发送失败
------
IS IT WHAT IT IS
我是 李慕白 請倒著唸.
又想把老話拿出來說, 請用台語發音 : 專家專家全是ROBOT CAR (滷肉腳啦);
都已接手這麼久了, 績效還是那麼爛, 講話還那麼大聲.
系統時間:2024-05-05 7:45:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!