Gui 设计帮助 - MFC
Posted
技术标签:
【中文标题】Gui 设计帮助 - MFC【英文标题】:Gui Design Help - MFC 【发布时间】:2010-01-12 18:04:29 【问题描述】:我需要设计一个任务管理器,不像windows的任务管理器,而是一个更通用的。
比如“我应该带我的孩子去学校”之类的任务。
那么,我需要设计一个合适的可扩展 gui 吗? (未来可能会有数百个任务)
有人可以推荐一个可以看的地方/应用吗?
此外,关于相关主题: 我打开 Mfc 资源编辑器,并试图将列添加到列表框中,但找不到方法。有没有不写代码的好方法?
谢谢
【问题讨论】:
【参考方案1】:看看最优秀的:.dan.g 的 ToDoList 应用程序。在 CodeProject 上。
ToDoList
对于另一个问题,我认为您必须在代码中添加列。
【讨论】:
【参考方案2】:不确定在哪里为您提供通用 GUI 设计,但我可以帮助解决特定的列表框问题。不,无法在资源编辑器中添加列。这是我最近为使其更容易而编写的一些粗略代码:
void CMyDlg::AddColumn(LPCTSTR pszHeading, int iWidth, int nFormat)
VERIFY(m_wndList.InsertColumn(m_iNextColumn, pszHeading, nFormat, iWidth, -1) == m_iNextColumn);
++m_iNextColumn;
void CMyDlg::AddItem()
m_wndList.InsertItem(m_iItemCount, _T(""));
m_iNextColumn = 0;
++m_iItemCount;
void CMyDlg::SetNextColumn(LPCTSTR pszText)
m_wndList.SetItemText(m_iItemCount - 1, m_iNextColumn, pszText);
++m_iNextColumn;
【讨论】:
【参考方案3】:CodeProject 上有one example。
您只需单击“多列”属性即可创建多列列表框。我猜您真正想要的是报表模式下的列表控件,在这种情况下,您确实需要使用代码添加第二个(以及后续)列。
【讨论】:
【参考方案4】:向列表框添加列必须在代码中完成。例如,在您的 InitDialog()
、OnCreate()
或其他一些覆盖中,调用 list.InsertColumn(...)
以添加新列。在 CListCtrl
的 MSDN 帮助中对此进行了很好的描述。
【讨论】:
以上是关于Gui 设计帮助 - MFC的主要内容,如果未能解决你的问题,请参考以下文章