在視窗的同乙個位置切換不同的顯示內容,所有的內容都是乙個在同乙個構件上顯示的,可以切換顯示的內容。
demo vc6.0工程
demo的介面,很簡單,按change鍵切換不同的顯示,開始時是空的,按一下顯示salarys,再按一下顯示types,再按一下返回空白介面。後台乙個執行緒負責重新整理資料。
奇怪的問題:在vc6+fltk1.1.10中重新整理有些問題,詳見下面的**分析。在vs2008+fltk1.3.x中正常。
執行緒函式
[cpp]view plain
copy
print?
void thread_fun(void *pdata)
for(k=0; k
++i;
if(i>100000)
i=0;
for(int i=1; i<3; ++i)
} fl::flush(); //----new 5-1
sleep(300);
}
}
void thread_fun(void *pdata)
}fl::flush(); //----new 5-1
sleep(300);
} }
分析:執行緒重新整理函式中vc6中只能使用//------1行重新整理,如果使用第2行,則資料頭能夠顯示出來,資料需要動動滑鼠或者什麼的才能重新整理,可能是重新整理機制有問題。而在vs2008中可以使用2,3行的重新整理函式。而且使用第//-----1行的重新整理時,如果把矩形顏色設為red,重新整理時部分資料有時會變成紅色閃爍。
至於vc6中使用第1行重新整理,掃了一下fltk原始碼,fl_widget的redraw函式不是virtual,在派生類中實現redraw會隱藏基類的實現,但是wndstruct中的pwnd是fl_widget指標,預設應該是呼叫基類fl_widget的實現??
哎!沒想明白!
【剛剛知道原因,沒有呼叫fl::flush()函式,在重新整理的時候呼叫一次該函式即可重新整理,應該是全部頁面的重新整理---不確定,加入//new 5-1一句,即可實現重新整理。-------2013.5.1 note】
FLTK學習 9 相同視窗不同內容顯示切換
在視窗的同乙個位置切換不同的顯示內容,所有的內容都是乙個在同乙個構件上顯示的,可以切換顯示的內容。demovc6.0工程 demo的介面,很簡單,按change鍵切換不同的顯示,開始時是空的,按一下顯示salarys,再按一下顯示types,再按一下返回空白介面。後台乙個執行緒負責重新整理資料。奇怪...
中級演算法 9 相交鍊錶
題目 編寫乙個程式,找到兩個單鏈表相交的起始節點。例如,下面的兩個鍊錶 a a1 a2 c1 c2 c3 b b1 b2 b3 在節點 c1 開始相交。注意 如果兩個鍊錶沒有交點,返回 null.在返回結果後,兩個鍊錶仍須保持原有的結構。可假定整個鍊錶結構中沒有迴圈。程式盡量滿足 o n 時間複雜度...
sklearn學習 sklearn學習的相關資料
0 scikit learn官網 1 使用sklearn進行整合學習 理論 2 使用sklearn進行整合學習 實踐 3 sklearn學習筆記之開始 4 誰動了我的特徵?sklearn特徵轉換行為全記錄 5 使用sklearn優雅地進行資料探勘 備註 作者是個大神 6 sklearn多個例項 7 ...