鸢 鸢都剑客 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-06 #1 像酒店管理中的房间房态一览表,是用什么控件做的啊,我用stringgrid在每个网格中只能显示一行文本,(我要分三行,房号、房态、房价),而且还不能改变单个网格的背景色。有没有知谁知道怎么弄的啊,是不是要自己写控件啊,有没有现成第三方控件??/
像酒店管理中的房间房态一览表,是用什么控件做的啊,我用stringgrid在每个网格中只能显示一行文本,(我要分三行,房号、房态、房价),而且还不能改变单个网格的背景色。有没有知谁知道怎么弄的啊,是不是要自己写控件啊,有没有现成第三方控件??/
鸢 鸢都剑客 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-06 #2 有没有哪位老兄知道啊,你有现成的控件给我发一份啊sxlaq@163.com
D dobug Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-06 #3 就用stringgrid,在他的重画事件里算准了坐标自己写,用textout就行,想画图都可以 用Listview也可以
I icc Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-06 #4 一行一个房间最合适,这样可选的网格控件比较 多,实现也比较容易
鸢 鸢都剑客 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #5 to :dobug 有实例吗,或者是原代码,谢谢怎么画啊,还有就是背影色怎么改变? to: icc, 一行显是一个的话,我用DBGrid就行了。,我想要的是一个单元格显示一个。
M Mike1234567890 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #6 实在不行自己做控件吧 可能以后也会用得到
鸢 鸢都剑客 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #7 没有事现成的吗,我现在不会自己做控件啊.??哪个帮帮我啊
C crazyman2006 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #8 我以前用SrcollBox,在里面动态生成TImage,然后挥之包房状态.自己绘制吧.不过需要大量的KEYUP,KEYDOWN事件,如果可能的话你可以做成一个组件,不是很费劲的.
老 老甘 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #12 我用的Tshape 中的Rect 改编,加多一个Caption,遗迹 相关属性即可。 每个房间建立一个实例,根据房间号设置相关属性,很好控制。
C chen_liang Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #15 这样可以显示三行 procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin with stringgrid1.Canvas do begin textout(rect.Left + 30, rect.Top + 2, '房号'); textout(rect.Left + 30, rect.Top + 20, '房态'); textout(rect.Left + 30, rect.Top + 40, '房价'); end; end;
这样可以显示三行 procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin with stringgrid1.Canvas do begin textout(rect.Left + 30, rect.Top + 2, '房号'); textout(rect.Left + 30, rect.Top + 20, '房态'); textout(rect.Left + 30, rect.Top + 40, '房价'); end; end;
鸢 鸢都剑客 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #18 to:chen_liang谢谢,用你的方法做好了,不一个问题.你知道怎么设置StringGrid内单个网格的颜色吗????
鸢 鸢都剑客 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #19 我的搞定了 with Stringgird1 Canvas do begin if (ACol=1)and(ARow=2) then Brush.color:=clRed; FillRect(Rect); textout(rect.Left + 3, rect.Top + 2, inttostr(Acol)+','+inttostr(ARow)); textout(rect.Left + 3, rect.Top + 20, '房态'); textout(rect.Left + 3, rect.Top + 40, '房价'); end;
我的搞定了 with Stringgird1 Canvas do begin if (ACol=1)and(ARow=2) then Brush.color:=clRed; FillRect(Rect); textout(rect.Left + 3, rect.Top + 2, inttostr(Acol)+','+inttostr(ARow)); textout(rect.Left + 3, rect.Top + 20, '房态'); textout(rect.Left + 3, rect.Top + 40, '房价'); end;
鸢 鸢都剑客 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-07 #20 我的搞定了 with Stringgird1 Canvas do begin if (ACol=1)and(ARow=2) then Brush.color:=clRed; FillRect(Rect); textout(rect.Left + 3, rect.Top + 2, inttostr(Acol)+','+inttostr(ARow)); textout(rect.Left + 3, rect.Top + 20, '房态'); textout(rect.Left + 3, rect.Top + 40, '房价'); end;
我的搞定了 with Stringgird1 Canvas do begin if (ACol=1)and(ARow=2) then Brush.color:=clRed; FillRect(Rect); textout(rect.Left + 3, rect.Top + 2, inttostr(Acol)+','+inttostr(ARow)); textout(rect.Left + 3, rect.Top + 20, '房态'); textout(rect.Left + 3, rect.Top + 40, '房价'); end;