ListControl控件问题

一枚小菜 2009-06-06 11:06:28
我想在报告式的ListControl控件中显示就绪队列、阻塞队列进程的信息。
前面显示就绪队列中进程信息,接着是阻塞队列信息。
效果如:
进程名称 到达时间 进程状态 优先数 所需时间 已运行时间
bb 23:01:37 运行中 0 12 2
aa 23:01:32 阻塞 0 15 5

但是运行的时候出现了一点小问题:
显示的却是这样:
进程名称 到达时间 进程状态 优先数 所需时间 已运行时间
bb 23:01:37 运行中 0 12 2
aa 23:01:32 阻塞 0 15 5
bb 23:01:37 运行中 0 12 2

有多出一个bb来,不知道是怎么回事。显示的如下代码:
UpdateData(true);
m_WaitProcessList.DeleteAllItems();//清除所有显示
CString Supper,NeedTime,RunTime;
int ItemCount;
PCB *p;
p=Queue.GetFrontPointer();//获取队头指针
if(!Queue.QueueEmpty())
Queue.GetFrontPointer()->state="运行中...";
while(p) //显示就绪队列进程信息
{
Supper.Format("%d",Queue.GetProSupper(p));
NeedTime.Format("%d",Queue.GetProNTime(p));
RunTime.Format("%d",Queue.GetProRTime(p));
ItemCount=m_WaitProcessList.GetItemCount();
m_WaitProcessList.InsertItem(ItemCount,Queue.GetProName(p));
m_WaitProcessList.SetItemText(ItemCount,1,Queue.GetATime(p));
m_WaitProcessList.SetItemText(ItemCount,2,Queue.GetProState(p));
m_WaitProcessList.SetItemText(ItemCount,3,Supper);
m_WaitProcessList.SetItemText(ItemCount,4,NeedTime);
m_WaitProcessList.SetItemText(ItemCount,5,RunTime);

p=p->next;
}

p=QueueBlock.GetFrontPointer();
while(p) //显示阻塞队列进程信息
{
Supper.Format("%d",QueueBlock.GetProSupper(p));
NeedTime.Format("%d",QueueBlock.GetProNTime(p));
RunTime.Format("%d",QueueBlock.GetProRTime(p));
ItemCount=m_WaitProcessList.GetItemCount();
m_WaitProcessList.InsertItem(ItemCount,QueueBlock.GetProName(p));
m_WaitProcessList.SetItemText(ItemCount,1,QueueBlock.GetATime(p));
m_WaitProcessList.SetItemText(ItemCount,2,QueueBlock.GetProState(p));
m_WaitProcessList.SetItemText(ItemCount,3,Supper);
m_WaitProcessList.SetItemText(ItemCount,4,NeedTime);
m_WaitProcessList.SetItemText(ItemCount,5,RunTime);

p=p->next;
}
...全文
79 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yulinwood 2009-06-08
  • 打赏
  • 举报
回复
虽然得不到分 帮你顶一下
一枚小菜 2009-06-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 skyxie 的回复:]
可能是你的QueueBlock的数据重复了,
你打印一下QueueBlock的大小看看
[/Quote]
看过了,没有。
应该是将就绪队列中的进程信息在阻塞队列进程信息后面有打印了一次。
应该是输入的问题吧!
怎么解决啊?
n27583939 2009-06-06
  • 打赏
  • 举报
回复
看看高手是怎么说吧,这个我也不知道
skyxie 2009-06-06
  • 打赏
  • 举报
回复
可能是你的QueueBlock的数据重复了,
你打印一下QueueBlock的大小看看

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧