TOM で Tab メソッドを使用する方法

次の例では、テキスト オブジェクト モデル (TOM) のタブ メソッドの使用方法を示す C 関数を示します。 ほとんどのアプリケーションでは、現在選択されている段落のタブの現在の位置と種類を示すツール バーが含まれていると想定されています。

知っておくべきこと

テクノロジ

前提条件

  • 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 (タブのコピー元の段落) と ITextParap * ParaFrom (タブのコピー先の段落) の 2 つのパラメーターを受け取ります。

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)