如何将struct 内容添加到TREE中!菜鸟试飞请多关照!
ko321 2004-12-22 09:53:11 问题描述如下:
这是我定义的struct
struct Room
{
int PlayerCount; //玩家人数
int MaxPlayerNum; //最大容量
int CurPlayerNum; //当前人数
int nImage;
CString GameClass; //游戏名称
CString RoomClass; //房间类别
CString RoomName; //房间号码
CString FolderName; //文件夹名称
};
这里我将struct 赋值并保存到CArray中。
typedef CArray<Room, Room&> CArrayRoom;
typedef CArray<CArrayRoom*,CArrayRoom *> Datas;
CArrayRoom * pAry = NULL;
void TestCarray(void)
{
Datas MyDatas;
pAry = new CArrayRoom;
Room t_Room;
// 加入第一个数据
t_Room.PlayerCount = 4;
t_Room.MaxPlayerNum =80;
t_Room.CurPlayerNum =44;
t_Room.GameClass ="四国";
t_Room.RoomClass ="训练1";
t_Room.RoomName="房间1";
t_Room.FolderName ="Game";
pAry->Add(t_Room);
t_Room.PlayerCount = 4;
t_Room.MaxPlayerNum =80;
t_Room.CurPlayerNum =40;
t_Room.GameClass ="四国";
t_Room.RoomClass ="战场1";
t_Room.RoomName="房间1";
t_Room.FolderName ="Game";
pAry->Add(t_Room);
t_Room.PlayerCount = 4;
t_Room.MaxPlayerNum =80;
t_Room.CurPlayerNum =20;
t_Room.GameClass ="扑克";
t_Room.RoomClass ="战场2";
t_Room.RoomName="房间1";
t_Room.FolderName ="Game";
pAry->Add(t_Room);
这里我自己试着做了一下添加到树中:
for (int i=0;i<pAry->GetSize();i++)
{
Room & tRoom=pAry->ElementAt(i);
HTREEITEM h_root=m_Tree.InsertItem(tRoom.GameClass);
HTREEITEM h_1=m_Tree.InsertItem (tRoom.RoomClass,1,1,h_root,TVI_SORT);
HTREEITEM h_11=m_Tree.InsertItem (tRoom.RoomName ,h_1);
}
我的问题:
第一:象我前面定义了两个“四国”的字段,就会在树中显示两个四国在同一级别,而我的想法是这样。
训练----房间1
四国
战场----房间1
请问如何实现?
第二:或者说我如何能把定义好的数据让它显示到树中呢!
第三:玩家人数我又如何显示到树中呢?
各位高手可以看出,我想做个游戏大厅的界面类似QQ,联众那种,请大家多给一些建议给我!