Gui Design Help - MFC - PullRequest
       11

Gui Design Help - MFC

0 голосов
/ 12 января 2010

Мне нужно спроектировать диспетчер задач, не такой, как диспетчер задач Windows, а более общий.

типа задания «я должен отвести ребенка в школу».

мне нужно разработать соответствующий масштабируемый графический интерфейс?(в будущем могут появиться сотни задач)

Может ли кто-нибудь предложить место / приложение для просмотра в дополнение?

дополнительно и по связанной теме: я открыл редактор ресурсов Mfc ипытаясь добавить столбцы в список, но не смог найти способ.Есть ли хороший способ сделать это без написания кода?

Спасибо

Ответы [ 4 ]

1 голос
/ 12 января 2010

Взгляните на самое превосходное приложение ToDoList от .dan.g. на CodeProject.

ToDoList

Что касается другого вопроса, я думаю, что вы должны добавить столбцы в коде.

0 голосов
/ 13 января 2010

Добавление столбцов в список должно быть сделано в коде. Например, в вашем InitDialog(), или OnCreate(), или в каком-либо другом переопределении, вызовите list.InsertColumn(...), чтобы добавить новые столбцы. Это очень хорошо описано в справке MSDN для CListCtrl.

0 голосов
/ 12 января 2010

В CodeProject есть один пример .

Вы можете сделать список многоколоночным, просто щелкнув свойство «многоколонка». Я предполагаю, что вам действительно нужен элемент управления списком в режиме отчета, и в этом случае вам нужно добавить второй (и последующие) столбцы, используя код.

0 голосов
/ 12 января 2010

Не знаю, куда вам обратиться за общим дизайном графического интерфейса, но я могу помочь с конкретным вопросом списка. Нет, в редакторе ресурсов нет возможности добавлять столбцы. Вот небольшой пример кода, который я недавно сделал, чтобы упростить его:

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;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...