ProgressCtrl
שלום, יש לי תוכנית שמבצעת 8 פעמים פעולה מסוימת שלוקחת משהו כמו חצי שניה, בגלל שזה 8 פעמים חצי שניה זה לוקח משהו כמו 4 שניות לעשות את הפעולה הזאת אז רציתי לשים PROGRESSBAR שיראה למשתמש את התקדמות הפעולה. זה הקוד:
הבעיה היא שהבר עולה אבל לא בצורה רציפה אלא בקפיצות לא יפות... יש דרך להקפיץ את הבר בצורה רציפה? יאיר
שלום, יש לי תוכנית שמבצעת 8 פעמים פעולה מסוימת שלוקחת משהו כמו חצי שניה, בגלל שזה 8 פעמים חצי שניה זה לוקח משהו כמו 4 שניות לעשות את הפעולה הזאת אז רציתי לשים PROGRESSBAR שיראה למשתמש את התקדמות הפעולה. זה הקוד:
void CDialogDlg::OnTran() { int i; CByteArray a,b,c,d,e,f,g,h,head; head.Add(72); // add header byte! for(i=0;i<480;i++) // add 1st 10 bytes { a.Add(hexarray); // data bytes b.Add(hexarray[i+480]); // data bytes c.Add(hexarray[i+960]); // data bytes d.Add(hexarray[i+1440]); // data bytes e.Add(hexarray[i+1920]); // data bytes f.Add(hexarray[i+2400]); // data bytes g.Add(hexarray[i+2880]); // data bytes h.Add(hexarray[i+3360]); // data bytes } m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(head)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(a)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(b)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(c)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(d)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(e)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(f)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(g)); m_progCtrl.StepIt(); m_Comm.SetOutput(COleVariant(h)); m_progCtrl.StepIt(); m_progCtrl.SetPos(0); }
הבעיה היא שהבר עולה אבל לא בצורה רציפה אלא בקפיצות לא יפות... יש דרך להקפיץ את הבר בצורה רציפה? יאיר