MFC如何实现这样的表格

youyour123 2015-03-04 11:21:47
MFC如何实现这样的表格
...全文
889 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
huanglin03 2015-03-10
  • 打赏
  • 举报
回复
引用 11 楼 rxguoblp 的回复:
[quote=引用 10 楼 bug1190 的回复:] [quote=引用 9 楼 rxguoblp 的回复:] 不建议用MFC类库来做这样的表格,效率低、效果还不好,去找Grid相关的封装好第三方类库,拿过来直接用。
你直接说你也不会用MFC来做那样的表格得了,不是更直接[/quote] 看看哥的等级就知道我会不会用了,给你中肯的建议还不接受,很快你就明白过来的,如果你坚持用MFC干活的话[/quote] 再看你也是不会,不然那么简单的表格,干吗还去找第三方库,自己写一个也就是分分钟的事
rxguoblp 2015-03-10
  • 打赏
  • 举报
回复
引用 10 楼 bug1190 的回复:
[quote=引用 9 楼 rxguoblp 的回复:] 不建议用MFC类库来做这样的表格,效率低、效果还不好,去找Grid相关的封装好第三方类库,拿过来直接用。
你直接说你也不会用MFC来做那样的表格得了,不是更直接[/quote] 看看哥的等级就知道我会不会用了,给你中肯的建议还不接受,很快你就明白过来的,如果你坚持用MFC干活的话
rxguoblp 2015-03-10
  • 打赏
  • 举报
回复
引用 12 楼 bug1190 的回复:
[quote=引用 11 楼 rxguoblp 的回复:] [quote=引用 10 楼 bug1190 的回复:] [quote=引用 9 楼 rxguoblp 的回复:] 不建议用MFC类库来做这样的表格,效率低、效果还不好,去找Grid相关的封装好第三方类库,拿过来直接用。
你直接说你也不会用MFC来做那样的表格得了,不是更直接[/quote] 看看哥的等级就知道我会不会用了,给你中肯的建议还不接受,很快你就明白过来的,如果你坚持用MFC干活的话[/quote] 再看你也是不会,不然那么简单的表格,干吗还去找第三方库,自己写一个也就是分分钟的事[/quote] 回家多练两年,再来跟我谈“分分钟的事”! 软件编程到了一定程度就是一个追求卓越,提升代码效率和质量的过程!“分分钟的事”写出来的代码毕竟垃圾(你仅关注效果的实现而已,30分的水平)。 目测楼主的需求(主要是背景色处理),需要根据数据的特性来动态改变,引入第三方库之后可以根据坐标位置直接设定呈现的形式,你用MFC徒手从底层画的话,"分分钟的事"试试? 唉!
huanglin03 2015-03-07
  • 打赏
  • 举报
回复
引用 9 楼 rxguoblp 的回复:
不建议用MFC类库来做这样的表格,效率低、效果还不好,去找Grid相关的封装好第三方类库,拿过来直接用。
你直接说你也不会用MFC来做那样的表格得了,不是更直接
rxguoblp 2015-03-06
  • 打赏
  • 举报
回复
不建议用MFC类库来做这样的表格,效率低、效果还不好,去找Grid相关的封装好第三方类库,拿过来直接用。
huanglin03 2015-03-06
  • 打赏
  • 举报
回复
哎,看了楼上所有人的回复,我终于明白为什么大家都说MFC难学了,
笨笨仔 2015-03-04
  • 打赏
  • 举报
回复
应该可以吧 例

// CMyListCtrl

class CMyListCtrl : public CMFCListCtrl
{
	DECLARE_DYNAMIC(CMyListCtrl)

public:
	CMyListCtrl();
	virtual ~CMyListCtrl();

protected:
	DECLARE_MESSAGE_MAP()

	/*通过虚函数可修改表的行、列的颜色和字体*/
	virtual COLORREF OnGetCellBkColor(int nRow, int nColum);				// 修改背景色
	virtual COLORREF OnGetCellTextColor(int nRow, int nColum);				// 修改文本色
	virtual HFONT OnGetCellFont(int nRow, int nColum, DWORD dwData = 0);	// 修改字体
	// 排序处理
	virtual int OnCompareItems(LPARAM lParam1, LPARAM lParam2, int iColumn);
private:
	// 背景灰状态数组
	CArray<bool,bool> m_arrayGrey;

	// 右键菜单工作状态
	void SetRightMenu(CMenu* pSubMenu);
public:
	// 加入记录
	void AddItem(int item,LPCTSTR str,bool bGrey);
	// 删除全部记录
	void DelAll(void);
public:
……
worldy 2015-03-04
  • 打赏
  • 举报
回复
创建一个表格类,表格类的每个单元可以独立控制颜色
likfeng 2015-03-04
  • 打赏
  • 举报
回复
http://www.codeproject.com/Articles/8/MFC-Grid-control-2-27
qwd108114 2015-03-04
  • 打赏
  • 举报
回复
可以使用第三方控件
ArthurKingYs 2015-03-04
  • 打赏
  • 举报
回复
简单点用listcontrol
zgl7903 2015-03-04
  • 打赏
  • 举报
回复
推荐 CGRidCtrl Code project 搜 MFCGridCtrl
洗洗睡去 2015-03-04
  • 打赏
  • 举报
回复
像2楼一样 派生一个cmfclistctrl 重载
virtual COLORREF OnGetCellBkColor(int nRow, int nColum);
很简单的

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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