本文整理汇总了C++中CField::SetModified方法的典型用法代码示例。如果您正苦于以下问题:C++ CField::SetModified方法的具体用法?C++ CField::SetModified怎么用?C++ CField::SetModified使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CField
的用法示例。
在下文中一共展示了CField::SetModified方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PopulateFields
void CBibitemView::PopulateFields()
{
// At the moment nothing is selected
m_SelField = -1;
BeginUpdate();
int l = -1, c = -1;
m_ListFields.GetEditPos(l, c);
m_ListFields.DeleteAllItems();
POSITION h = m_TmpItem->GetHeadPosition();
CField* fi;
int j = 0;
for (int i = 0; i < m_TmpItem->GetCount(); i++) {
fi = (CField*)m_TmpItem->GetNext(h);
if (fi) {
j = m_ListFields.InsertItem(j, fi->GetName(), m_BibDef->GetRequired(m_TmpItem->GetType(), fi->GetName()));
m_ListFields.SetItemText(j, 1, fi->GetValue());
m_ListFields.SetItemData(j, (DWORD)fi);
}
if (h == NULL)
break;
}
// Add all other fields
CField *finew;
CBibItem *bi = m_BibDef->FindType(m_TmpItem->GetType());
if (bi != NULL) {
h = bi->GetHeadPosition();
for (i = 0; i < bi->GetCount(); i++) {
fi = (CField*)bi->GetNext(h);
if (fi != NULL && m_TmpItem->Find(fi->GetName()) == NULL) {
finew = m_TmpItem->New();
finew->SetName(fi->GetName());
finew->SetModified(FALSE);
j = m_ListFields.InsertItem(j, finew->GetName(), m_BibDef->GetRequired(m_TmpItem->GetType(), finew->GetName()));
m_ListFields.SetItemText(j, 1, _T(""));
m_ListFields.SetItemData(j, (DWORD)finew);
}
if (h == NULL)
break;
}
}
// Sort it
LVSORTPARAM ss;
ss.iHeader = 0;
ss.pListView = &m_ListFields;
ss.bSortAsc = TRUE;
// Sort the list
m_ListFields.SortItems(SortFunc, (LPARAM)&ss);
m_SortAsc = FALSE;
// Edit the last cell if any
if (l > -1 && c > -1) {
if (l >= m_ListFields.GetItemCount()) {
m_ListFields.CancelEdit(TRUE);
m_ListFields.EditSubItem(m_ListFields.GetItemCount()-1, c);
} else
m_ListFields.EditSubItem(l, c);
}
m_ListFields.UpdateEditor();
EndUpdate();
}