Create Text using code

[Top]  [Chapter]  [Previous]  [Next]

We want to show all the wpa actions nicely formatted in the editor.

 

To the event handler of a newly created button we add this code to create a table in the editor.

 

       // Now clear the text

       WPDLLInt1.Clear();

 

       // We need these interfaces for text creation

       IWPMemo Memo = WPDLLInt1.Memo;

       IWPTextCursor TextCursor = Memo.TextCursor;

       IWPAttrInterface AttrHelper = WPDLLInt1.AttrHelper;

       IWPParInterface CurrPar = Memo.CurrPar;

 

       // set all margins, do not change page size

       Memo.PageSize.SetPageWH(-1,-1,360,360,360,360);

 

       // We want to use 2 different character styles

       AttrHelper.Clear();

       AttrHelper.SetFontface("Verdana");

       AttrHelper.SetFontSize(11);

       AttrHelper.IncludeStyles(1); // bold

       int headerchars = AttrHelper.CharAttrIndex;

 

    AttrHelper.Clear();

       AttrHelper.SetFontface("Verdana");

       AttrHelper.SetFontSize(8);

       int bodychars = AttrHelper.CharAttrIndex;

 

       // and add a one row table

       TextCursor.AddTable("WPA",3,1,true,0,false,false);

 

       // Now add one row after the other

       string n = "",c ="",h ="";

       for(int i=0; i<1000;i++)

        {

               if (!WPDLLInt1.Memo.wpaGetCaption(i,ref n, ref c, ref h)) break;

               TextCursor.CPMoveNextRow(true); // down and create

               TextCursor.CPTableColNr = 0;

               CurrPar.SetText(n, bodychars);

               TextCursor.CPTableColNr = 1;

               CurrPar.SetText(c, bodychars);

               TextCursor.CPTableColNr = 2;

               CurrPar.SetText(h, bodychars);

       }

 

       // add text to the header row

       TextCursor.CPTableRowNr = 0;

       TextCursor.CPTableColNr = 0;

       CurrPar.SetText("Name", headerchars);

       CurrPar.Alignment = 1;

       CurrPar.ParShading = 30;

       TextCursor.CPTableColNr = 1;

       CurrPar.SetText("Caption", headerchars);

       CurrPar.Alignment = 1;

       CurrPar.ParShading = 30;

       TextCursor.CPTableColNr = 2;

       CurrPar.SetText("Hint", headerchars);

       CurrPar.Alignment = 1;

       CurrPar.ParShading = 30;

 

       // and reformat

       Memo.Reformat();

 

This is the created table:

clip0045

 

 

 


[createtextusingcode.htm]    Copyright © 2007 by WPCubed GmbH