注册 登录
编程论坛 C++ Builder

[求助]如何利用StringGrid控件安排考场座位表

douyacai 发布于 2007-09-19 13:11, 2449 次点击

我在实现安排考场座位表,是想在C++Builder中把一张Form窗体看成教室,然后利用StringGrid的格式,,安排出考生的考试座位表,,,,请教各位高手,,,,,能否帮个忙实现下,谢谢

3 回复
#2
热情依然2007-09-19 19:12

//这个是我实际项目中的代码,你可以参考一下 m_InvInfoStringGrid 是 StringGrid

m_InvInfoStringGrid->CleanupInstance();
m_InvInfoStringGrid->RowCount = FillMain->SaleBillCount+1;
m_InvInfoStringGrid->ColCount = 6;
m_InvInfoStringGrid->ColWidths[0] = 35;
m_InvInfoStringGrid->ColWidths[1] = 120;
m_InvInfoStringGrid->ColWidths[2] = 200;
m_InvInfoStringGrid->ColWidths[3] = 100;
m_InvInfoStringGrid->ColWidths[4] = 100;
m_InvInfoStringGrid->ColWidths[5] = 100;
m_InvInfoStringGrid->Cells[0][0] = "序号";
m_InvInfoStringGrid->Cells[1][0] = "编号";
m_InvInfoStringGrid->Cells[2][0] = "客户名称";
m_InvInfoStringGrid->Cells[3][0] = "不含税金额";
m_InvInfoStringGrid->Cells[4][0] = "税额";
m_InvInfoStringGrid->Cells[5][0] = "含税金额";

std::vector<std::pair< AnsiString, INVOICELISTINFO* > >::iterator it;
int nIndex = 1;
for( it = m_vecInvInfo.begin(); it != m_vecInvInfo.end(); ++it,nIndex++)
{
m_InvInfoStringGrid->Cells[0][nIndex] = nIndex;
m_InvInfoStringGrid->Cells[1][nIndex] = it->first;
m_InvInfoStringGrid->Cells[2][nIndex] = it->second->strMerName;
m_InvInfoStringGrid->Cells[3][nIndex] = FormatFloat("###,###,###,##0.00",it->second->fTotalPriceWithoutfCess);
m_InvInfoStringGrid->Cells[4][nIndex] = FormatFloat("###,###,###,##0.00",it->second->fTax);
m_InvInfoStringGrid->Cells[5][nIndex] = FormatFloat("###,###,###,##0.00",it->second->fTotalPrice);
}

#3
douyacai2007-09-20 12:31
我比较笨..还是没能把你的例子和我的问题结合起来,只是看的懂要用二维数组,能否给个详细的解释呢?
#4
热情依然2007-09-22 11:36

我那个例子是说明怎么用那个stringgrid,你可以根据我给的例子自己想算法

1