| 上一篇主題 :: 下一篇主題   | 
	
	
	
		| 發表人 | 
		內容 | 
	
	
		ericklin
 
 
  註冊時間: 2007-11-14 文章: 107 來自: 台中市
  第 1 樓
  | 
		
			
				 發表於: 星期四 二月 10, 2011 2:54 pm    文章主題: on shutdown QUIT 無法關機(已解決) | 
				     | 
			 
			
				
  | 
			 
			
				如題
 
在主程式加了 on shutdown QUIT 
 
(目地是 按了 _SCREEN.CLOSE 可以結束程式)
 
但卻影響電腦登出及關機 動做。
 
不先把 VFP程式結束 直接登出,需登出二次才會成功登出。
 
第一次登出 結束了VFP程式 --中斷了登出動做
 
 
若主程式不加 on shutdown  就不會有這情況
 
但會快速出現 "無法結束VFP " 的字眼 後登出(關機)
 
 
是否有網大 能幫忙 排除 電腦登出時 不出現 "無法結束 vfp" ???
   ericklin 在 星期三 二月 16, 2011 3:37 pm 作了第 1 次修改 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 2 樓
  | 
		
			
				 發表於: 星期四 二月 10, 2011 4:21 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				請搜尋 "無法結束vfp" _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		ericklin
 
 
  註冊時間: 2007-11-14 文章: 107 來自: 台中市
  第 3 樓
  | 
		
			
				 發表於: 星期四 二月 10, 2011 4:55 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				syntech 兄 感謝回覆
 
站內搜尋的方法都試過了 ,可以都可順利  結束程式 也不會出現  "無法結束vfp"
 
但是我的問題依然存在 "需登出二次才會成功"
 
你那裡能否幫忙測看看 不結束程式 直接電腦 登出,是否能一次就成功?。 謝謝了 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 4 樓
  | 
		
			
				 發表於: 星期四 二月 10, 2011 5:51 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				不會,一次就成功.
 
 
因為不是 "on shutdown QUIT "
 
而是 "on shutdown function_QUIT "
 
然後用搜尋到的方法處理 _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		ericklin
 
 
  註冊時間: 2007-11-14 文章: 107 來自: 台中市
  第 5 樓
  | 
		
			
				 發表於: 星期四 二月 10, 2011 6:00 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我貼上我的方式 請幫我check一下
 
在 main form 內的activate method 加了
 
set procedure to user_proce.prg additive
 
on shutdown exitapi()
 
read events
 
 
=================在另一個user_proce.prg
 
function   exitapi
 
	Local C 
 
	For C = 1 to _Screen.FormCount 
 
	If type("_Screen.ActiveForm") = "O" 
 
	_Screen.ActiveForm.Release() 
 
	Endif 
 
	Endfor 
 
	Clear events 
 
	Release all 
 
	quit
 
endfunc | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		LiuRambo
 
 
  註冊時間: 2007-11-27 文章: 481
 
  第 6 樓
  | 
		
			
				 發表於: 星期五 二月 11, 2011 12:05 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				?
 
假設如果還有第二層的FORM開著 又設定了WINDOWTYPE=1
 
這樣點結束關的掉嗎?
 
這不就如同直接去點X關閉一樣 關不掉吧
 
 
建議是不是要修改一下去檢查是否還有其他FORM開啟
 
或者換個方式去檢查_SCREEN是不是ONFOCUS | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		ericklin
 
 
  註冊時間: 2007-11-14 文章: 107 來自: 台中市
  第 7 樓
  | 
		
			
				 發表於: 星期五 二月 11, 2011 2:59 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				謝謝 syntech兄 指點  相信您的確認 我又用另一種方法使用,結果成功了
 
問題分享:
 
原先 依 syntech兄的方式 在 main.scx 主程式上設定  on shutdown exitapi()  及read events 
 
怎麼試都不行。原本懷疑 方法不對 但 syntech兄 說他可以。
 
我就換另一種方式,另建 主程式 main.prg  由main.prg 去call main.scx
 
on shutdown exitapi()  及read events  都放在 main.prg 內
 
結果--我出運了--成功一次登出。 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		LiuRambo
 
 
  註冊時間: 2007-11-27 文章: 481
 
  第 8 樓
  | 
		
			
				 發表於: 星期五 二月 11, 2011 7:26 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				| 以PRG當主程式是本來就要的吧?! | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		pilipala
 
 
  註冊時間: 2009-05-13 文章: 75
 
  第 9 樓
  | 
		 | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		LiuRambo
 
 
  註冊時間: 2007-11-27 文章: 481
 
  第 10 樓
  | 
		
			
				 發表於: 星期五 二月 11, 2011 9:08 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				
 
 
 
FOR lnForm = _screen.FormCount TO 1 STEP -1
 
	_screen.Forms(m.lnForm).Release()
 
NEXT
 
這方法不錯 (筆記筆記 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		CCB2000
 
 
  註冊時間: 2009-03-25 文章: 97
 
  第 11 樓
  | 
		
			
				 發表於: 星期三 二月 16, 2011 9:24 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				試試:
 
function exitapi
 
HIDE WINDOW ALL
 
CLEAR events
 
ON shutdown
 
QUIT
 
endfunc _________________ VFP C++編譯軟件 (VFP C++ Compiler): http://www.baiyujia.com/vfpcompiler | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		whh
 
 
  註冊時間: 2010-04-16 文章: 166
 
  第 12 樓
  | 
		
			
				 發表於: 星期二 五月 14, 2013 11:15 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我可以請教一下嗎?
 
 
我參考了上面的作法照寫一個
 
 
Project Manager
 
   |
 
   |__ Code (分頁)
 
        |
 
        |__ Programs 
 
               |
 
               |__ my 
 
 
my.prg
 
內容
 
 
SET PROC TO MyFn ADDI 
 
SET PROC TO Myexitapi ADDI  && 參考上面教學
 
 
_VFP.Visible = .T.
 
_SCREEN.WindowState = 0
 
_SCREEN.WindowType  = 1
 
 
_screen.Visible=.F.
 
 
SET SYSMENU OFF
 
 
DO FORM MyWin_test
 
READ EVENTS
 
 
ON SHUTDOWN exitapi()    && 參考上面教學
 
 
可是不管是[登出、重開機]都還是會跑,終止程序 xxxxx,不會無聲無息的關掉
 
請問是什麼問題 ><? | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		whh
 
 
  註冊時間: 2010-04-16 文章: 166
 
  第 13 樓
  | 
		
			
				 發表於: 星期二 五月 14, 2013 11:21 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我知道了 0.0 
 
ON SHUTDOWN exitapi() 
 
要先放到
 
DO FORM MyWin_test 上面
 
讓程式寫載入
 
這樣才知道遇到,關機時會繞去那段 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		 |