Как использовать методы вкладок в TOM
В следующем примере представлены функции C, иллюстрирующие использование методов табуляции в текстовой объектной модели (TOM). Предполагается, что большинство приложений включают панель инструментов, отображающую текущее положение и тип вкладок для выбранного абзаца.
Что нужно знать
Технологии
Необходимые условия
- C/C++
- Программирование пользовательского интерфейса Windows
Инструкции
Использование метода TAB
В следующем примере кода показано, как обновить панель инструментов с текущими сведениями о вкладке.
HRESULT UpdateToolbar(ITextSelection *pSel)
{
HRESULT hr = S_OK;
ITextPara *pPara = 0;
float f;
long tbt; // tab type
long tbp;
hr = pSel->GetPara(&pPara);
if (FAILED(hr))
goto cleanup; // Paragraph properties are not supported
f = (float) -1.0; // Start at beginning
while (pPara->GetTab(tbgoNext, &f, &tbt, NULL) == S_OK)
{
// Do something like draw tab icon on toolbar here
// DrawTabPicture(f, tbt);
}
cleanup:
if (pPara)
pPara->Release();
return hr;
}
Копировать информацию о вкладке
В следующем примере показано, как скопировать только сведения о вкладке из одного интерфейса ITextPara в другой. Он принимает два параметра: ITextPara * pParaFrom (абзац, из которого следует копировать вкладки) и ITextPara * pParaFrom (абзац, на который следует копировать вкладки).
HRESULT CopyOnlyTabs(ITextPara *pParaFrom, ITextPara *pParaTo)
{
float f;
short tbt;
short style;
pParaTo->ClearAllTabs();
f = (float) -1.0;
while (pParaFrom->GetTab(tbgoNext, &f, &tbt, &style) == S_OK)
pParaTo->AddTab(f, tbt, style);
return S_OK;
}
Связанные разделы
-
использование элементов управления с расширенным редактированием
-
пример стандартных элементов управления Windows (CppWindowsCommonControls)