我讀過關於這裏寫在後一年前 wx.TextCtrl.LoadFile()WxTextCtrl無法加載大型文本
現在我有一個Windows應用程序,將生成保存在3D陣列顏色頻率統計solutuon。以下是我的代碼的一部分,您將在下面的代碼中看到統計信息的打印取決於指定閾值的滑塊。
無效Project1Frm :: WxButton2Click(wxCommandEvent &事件) {
char stat[32] ="";
int ***report = pGLCanvas->GetPixel();
float max = pGLCanvas->GetMaxval();
float dist = WxSlider5->GetValue();
WxRichTextCtrl1->Clear();
WxRichTextCtrl1->SetMaxLength(100);
if(dist>0)
{
WxRichTextCtrl1->AppendText(wxT("Statistics\nR\tG\tB\t\n"));
for(int m=0; m<256; m++){
for(int n=0; n<256; n++){
for(int o=0; o<256; o++){
if((report[m][n][o]/max)>=(dist/100.0))
{
sprintf(stat,"%d\t%d\t%d\t%3.6f%%\n",m,n,o,report[m][n][o]/max*100.0);
WxRichTextCtrl1->AppendText(wxT(stat));
}
}
}
}
}
else if(dist==0) WxRichTextCtrl1->LoadFile("histodata.txt");
}
到目前爲止,我已經試過的解決方案是,當我打印所有統計我去拿它來自一個文本文件,而不是通過3D數組......我想問一下,分段的Python實現是否可以移植到C++,或者有更好的方法來處理這個問題。謝謝。
編輯: 我使用文本文件的另一個原因是,我觀察到,只要我做sprintf [行WxRichTextCtrl1-> AppendText(wxT(stat));被評論]電腦開始放緩。
-Ric