VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

表單無法setfocus

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
kinhome



註冊時間: 2010-04-22
文章: 27
來自: 台南

第 1 樓

發表發表於: 星期六 十二月 18, 2010 9:32 am    文章主題: 表單無法setfocus 引言回覆

我在程式中...
_Screen.visible=.f.
do form 表單1
Read Events

然後在表單中設定ShowWindow=2,編譯成.exe後執行...
結果...
表單1顯示出來後無法setfocus,使用者必需用滑鼠再去點一下表單才能輸入資料。

請教各位大哥,我應該怎麼做才能讓使用者在程式執行後就能輸入資料呢??謝謝大家...
回頂端
檢視會員個人資料 發送私人訊息
LiuRambo



註冊時間: 2007-11-27
文章: 481


第 2 樓

發表發表於: 星期六 十二月 18, 2010 9:51 am    文章主題: 引言回覆

_Screen.visible=.f. <===這行用意何在???
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
kinhome



註冊時間: 2010-04-22
文章: 27
來自: 台南

第 3 樓

發表發表於: 星期六 十二月 18, 2010 10:02 am    文章主題: 引言回覆

LiuRambo大大您好:
_Screen.visible=.f.

這個是讓vfp預設的系統功能表不要顯示出來,因為我只想顯示表單而已~
回頂端
檢視會員個人資料 發送私人訊息
LiuRambo



註冊時間: 2007-11-27
文章: 481


第 4 樓

發表發表於: 星期六 十二月 18, 2010 11:44 am    文章主題: 引言回覆

系統功能表不要顯示出來 <== 所以這才是重點

SET SYSMENU ON | OFF | AUTOMATIC | TO [MenuList] | TO [MenuTitleList]
| TO [DEFAULT] | TO LTRJUSTIFY | TO RTLJUSTIFY | SAVE | NOSAVE



參數
ON


在程式執行期間,當 Visual FoxPro 正在等待諸如 BROWSE、READ 和 MODIFY COMMAND 等命令的鍵盤輸入時,啟用 Visual FoxPro 主功能表列。
OFF


在程式執行期間關閉 Visual FoxPro 主功能表列。要使該設定生效,OFF 參數必須在一個程式 (.prg) 中執行。例如,當在一個程式中執行以下程式碼時,將關閉 Visual FoxPro 主功能表列。
回頂端
檢視會員個人資料 發送私人訊息 MSN Messenger
kinhome



註冊時間: 2010-04-22
文章: 27
來自: 台南

第 5 樓

發表發表於: 星期日 十二月 19, 2010 6:13 pm    文章主題: 引言回覆

LiuRambo大大您好:

不好意思,可能我表達錯了。
SET SYSMENU off 我也是有用,這個只是讓系統功能表不要顯示,但是還是會出現背景是白色的部份,所以我才使用_Screen.visible=.f. 讓白色的部份不見了。

main.prg的程式如下...
SET SYSMENU off
_Screen.Picture=""
_Screen.visible=.f.
_Screen.WindowState =0
Set Status Bar Off
Set Escape Off
Set Talk Off
Set Bell On

Do Form 表單1
Read Events

編譯成.exe檔後執行...第一個畫面就是只有表單1。
問題在於...表單1無法取得焦點,要使用者去點一下表單1才能開始輸入資料。
回頂端
檢視會員個人資料 發送私人訊息
aizz



註冊時間: 2007-01-29
文章: 171


第 6 樓

發表發表於: 星期一 十二月 20, 2010 11:39 am    文章主題: Read Events 的 Focus 跑掉 引言回覆

kinhome 寫到:
LiuRambo大大您好:

不好意思,可能我表達錯了。
SET SYSMENU off 我也是有用,這個只是讓系統功能表不要顯示,但是還是會出現背景是白色的部份,所以我才使用_Screen.visible=.f. 讓白色的部份不見了。

main.prg的程式如下...
SET SYSMENU off
_Screen.Picture=""
_Screen.visible=.f.
_Screen.WindowState =0
Set Status Bar Off
Set Escape Off
Set Talk Off
Set Bell On

Do Form 表單1
Read Events

編譯成.exe檔後執行...第一個畫面就是只有表單1。
問題在於...表單1無法取得焦點,要使用者去點一下表單1才能開始輸入資料。


Read Events 後面, 你應該還有其它程式, 使得 Focus 跑到下一個程式
你想要 Focus 留在 Form 表單1, 則 Read Events 後面不能再有其它動作
回頂端
檢視會員個人資料 發送私人訊息
kinhome



註冊時間: 2010-04-22
文章: 27
來自: 台南

第 7 樓

發表發表於: 星期一 十二月 20, 2010 6:01 pm    文章主題: 引言回覆

aizz大大您好:
Read Events 後面已經沒有程式了哦~

是不是大家都不會這樣呢??只有我的會這樣嗎??
因為我翻遍了討論版,好像大家都沒有這個問題。
回頂端
檢視會員個人資料 發送私人訊息
kinhome



註冊時間: 2010-04-22
文章: 27
來自: 台南

第 8 樓

發表發表於: 星期一 十二月 20, 2010 7:35 pm    文章主題: 引言回覆

真是奇怪,我把表單的BorderStlye設為0
這樣就可以setfocus了
搞不懂這兩者有什麼相干
回頂端
檢視會員個人資料 發送私人訊息
Abel



註冊時間: 2005-03-14
文章: 189
來自: 鹿港小鎮

第 9 樓

發表發表於: 星期一 一月 17, 2011 12:50 pm    文章主題: 引言回覆

我猜您大概是用 xxx.prg 去叫用 xxx.scx,的方式將 Form 建立起來的,
如果是這樣,建議您使用

Do Form 表單1 Name 表單1_xxx Linked

表單1 就是您 xxx.scx 真實檔名,您 xxx.scx 的 thisform.name = 表單1_xxx,
再將它們 prg /scx 給 linked 起來就可以了

BorderStlye 相信您知道它不是這樣用的
謝謝.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作