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

PageControl的ActivePageIndex和所顯示的Page不同步!?

答題得分者是:taishyang
ychch0819
一般會員


發表:25
回覆:29
積分:15
註冊:2006-08-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-09-04 15:29:22 IP:59.120.xxx.xxx 訂閱
PageControl上有許多TabSheets…因為要讓使用者一開始直接看到第一個Tabsheet,所以程式一開始我預設ActivePageIndex為0 (也就是第一個tabsheet)。
而在執行一段程式後(一個for loop 程式…讓每個tabsheet設定上面元件的值)…但是執行完後…我發現我的PageControl所顯示的TabSheet是最後一個…但是上面的Tab顯示的卻是第一個才是所選擇的(壓下去的),而我用pagecontrol->AcitvePageIndex讀出屬性也是0…
只是為何pagecontrol所顯示的tabsheet卻是最後一個…我試過refresh, repaint皆無用,請問要如何解決…謝謝
編輯記錄
taishyang 重新編輯於 2007-09-04 15:32:57, 註解 將文章分類成[問題]‧
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-09-04 15:40:38 IP:122.124.xxx.xxx 未訂閱
ychch0819
一般會員


發表:25
回覆:29
積分:15
註冊:2006-08-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-09-04 15:48:24 IP:59.120.xxx.xxx 訂閱
嗯…我的問題不太一樣耶…我元件在design階段可以很正常的放在每一個tabsheet上…
只是在執行完那一段程式後…pagecontrol所顯示的page和tab才會發生不同步的情況…>"<
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-09-04 15:57:50 IP:122.124.xxx.xxx 未訂閱
不知是否誤會你的意思,要同步的話,要對這兩個屬性作存取的動作
如同連結中所描述

PageControl1->TabIndex
PageControl1->ActivePageIndex
編輯記錄
taishyang 重新編輯於 2007-09-04 15:59:14, 註解 無‧
ychch0819
一般會員


發表:25
回覆:29
積分:15
註冊:2006-08-09

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-09-04 16:22:13 IP:59.120.xxx.xxx 訂閱
可是我在PageControl中好像找不到TabIndex這個屬性,而要在PageControl->Pages->中才有!?
這樣是正確的嗎!?
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-09-04 16:31:44 IP:122.124.xxx.xxx 未訂閱
我用的是BCB6.0
ychch0819
一般會員


發表:25
回覆:29
積分:15
註冊:2006-08-09

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-09-04 16:58:48 IP:59.120.xxx.xxx 訂閱
很感謝taishyang提供的資訊…我已經找到問題所在…但還不知道怎麼解決…上面的問題因為我是用BCB5…所以沒有那個屬性…

程式中由於程式的關係,有幾個tabsheet會依據某些狀況,不讓使用者看見,所以我會使用tabsheet->TabVisible和tabsheet->Visible來設定…
而只要程式按下refresh,我會把所有的tabsheet依順序還原為visible=true的狀態,也就是因為依順序的關係,導致最後的page所顯示的一定是在最後一頁(但tab還是在activepageindex),我以為只要把第一頁放在最後一個還原…這樣或許就能解決…只是程式執行的結果…pagecontrol所顯示的page竟然還是在第一頁前的那個tabsheet...真頭大...
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#8 引用回覆 回覆 發表時間:2007-09-04 17:11:18 IP:122.124.xxx.xxx 未訂閱
抱歉,小弟沒有BCB5.0可以幫你試,只好等其他前輩幫你看看
ychch0819
一般會員


發表:25
回覆:29
積分:15
註冊:2006-08-09

發送簡訊給我
#9 引用回覆 回覆 發表時間:2007-09-04 17:17:56 IP:59.120.xxx.xxx 訂閱
後來只好用很蠢的方法…先用SelectNextPage改變activepageindex變成2,在用while去判斷…直到activepageindex==1才停止…>"<
Dreams
一般會員


發表:1
回覆:3
積分:0
註冊:2004-03-25

發送簡訊給我
#10 引用回覆 回覆 發表時間:2007-09-04 17:26:28 IP:59.125.xxx.xxx 訂閱
你好,不知道你遇到的問題是不是這樣的...
你只要在程式重新compile之前要再確認一下,
是否有動到UI的順序.
把你之後要顯示的ActivePage的tabSheet,
手動切換到目前的第一頁.
只要有動過,執行後的結果就會不一樣喔!
ychch0819
一般會員


發表:25
回覆:29
積分:15
註冊:2006-08-09

發送簡訊給我
#11 引用回覆 回覆 發表時間:2007-09-04 18:53:09 IP:59.120.xxx.xxx 訂閱
嗯…非常感謝…這個我已經有注意過了…^^
系統時間:2024-05-04 23:23:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!