廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 2731 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
ccw111
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x16 鮮花 x49
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[1.6][插件] 不知原因導致一個case無法執行(已解決)
不知道為什麼第149行的
case無法執行

sma檔案在此(請將擴展名改成txt)


[ 此文章被ccw111在2012-05-18 07:28重新編輯 ]


獻花 x0 回到頂端 [樓 主] From:未知地址 | Posted:2012-05-16 21:44 |
sonic0103
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x18
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

看來程式沒問題,編譯也正常通過。
但我會把switch整段改用if判斷式來替代成以下這樣

複製程式
if( TeamCreated[key-1] == true )
  SubSubTeamStateMenu( id , key )
else
  client_print( id , print_chat , "你所選擇的隊伍未被建立" )
一來程式區塊明瞭又減少程式碼重複的問題...

選擇 case2 時switch敘述句無法進入是因為在SubTeamStateHandler函式 
127行中的if敘述句條件成立,而呼叫了menu_destroy函式 (摧毀選單),所以導致執行並無如預期結果 !
(若是case1、case3 這個if敘述並不會成立)

複製程式
 
if( item == MEXIT_ALL )
{
  menu_destroy( menu );
} 


[ 此文章被sonic0103在2012-05-18 07:52重新編輯 ]


獻花 x1 回到頂端 [1 樓] From:臺灣威達超舜電信多媒體股份有限公司 | Posted:2012-05-18 03:57 |
ccw111
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x16 鮮花 x49
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 sonic0103 於 2012-05-18 03:57 發表的 : 到引言文
看來程式沒問題,編譯也正常通過。
但我會把swich整段改用if判斷式來替代成以下這樣
[code]
if( TeamCreated[key-1] == true )
SubSubTeamStateMenu( id , key )
.......

其實我試過把case 2 和case 3 倒轉
結果原本的case 2 能夠執行...

不過見到你把我的程式碼一部分放出來的時候
我終於發現了
原來我把if ( item == MENU_EXIT )寫成 if( item == MEXIT_ALL )
先謝謝
如果你不放上來我也看不到錯了什麼


[ 此文章被ccw111在2012-05-19 21:49重新編輯 ]


獻花 x0 回到頂端 [2 樓] From:未知地址 | Posted:2012-05-18 07:27 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.022438 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言