752
|
Locks the first visible column on the left and the last visible column on the right

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
spTree1->PutBackColorLock(RGB(192,192,192));
spTree1->PutGridLineStyle(EXTREELib::exGridLinesSolid);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
/*
Includes the definition for CreateObject function like follows:
#include <comdef.h>
IUnknownPtr CreateObject( BSTR Object )
{
IUnknownPtr spResult;
spResult.CreateInstance( Object );
return spResult;
};
*/
/*
Copy and paste the following directives to your header file as
it defines the namespace 'ADODB' for the library: 'Microsoft ActiveX Data Objects 6.1 Library'
#import <msado15.dll> rename("EOF","REOF")
*/
ADODB::_RecordsetPtr rs = ::CreateObject(L"ADOR.Recordset");
rs->Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.mdb",ADODB::adOpenStatic,ADODB::adLockOptimistic,0);
spTree1->PutDataSource(((ADODB::_RecordsetPtr)(rs)));
spTree1->PutCountLockedColumns(17);
spTree1->EndUpdate();
|
751
|
Lock the column on the right

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
spTree1->PutBackColorLock(RGB(192,192,192));
spTree1->PutGridLineStyle(EXTREELib::exGridLinesSolid);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
/*
Includes the definition for CreateObject function like follows:
#include <comdef.h>
IUnknownPtr CreateObject( BSTR Object )
{
IUnknownPtr spResult;
spResult.CreateInstance( Object );
return spResult;
};
*/
/*
Copy and paste the following directives to your header file as
it defines the namespace 'ADODB' for the library: 'Microsoft ActiveX Data Objects 6.1 Library'
#import <msado15.dll> rename("EOF","REOF")
*/
ADODB::_RecordsetPtr rs = ::CreateObject(L"ADOR.Recordset");
rs->Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.mdb",ADODB::adOpenStatic,ADODB::adLockOptimistic,0);
spTree1->PutDataSource(((ADODB::_RecordsetPtr)(rs)));
spTree1->PutCountLockedColumns(16);
spTree1->EndUpdate();
|
750
|
Lock the column on the left

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
spTree1->PutBackColorLock(RGB(192,192,192));
spTree1->PutGridLineStyle(EXTREELib::exGridLinesSolid);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
/*
Includes the definition for CreateObject function like follows:
#include <comdef.h>
IUnknownPtr CreateObject( BSTR Object )
{
IUnknownPtr spResult;
spResult.CreateInstance( Object );
return spResult;
};
*/
/*
Copy and paste the following directives to your header file as
it defines the namespace 'ADODB' for the library: 'Microsoft ActiveX Data Objects 6.1 Library'
#import <msado15.dll> rename("EOF","REOF")
*/
ADODB::_RecordsetPtr rs = ::CreateObject(L"ADOR.Recordset");
rs->Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.mdb",ADODB::adOpenStatic,ADODB::adLockOptimistic,0);
spTree1->PutDataSource(((ADODB::_RecordsetPtr)(rs)));
spTree1->PutCountLockedColumns(1);
spTree1->EndUpdate();
|
749
|
Bolds only the expanded items

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
spTree1->GetConditionalFormats()->Add(L"%CX0",vtMissing)->PutBold(VARIANT_TRUE);
spTree1->GetColumns()->Add(L"Description");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root 1");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(var_Items->InsertItem(h,vtMissing,"Child 2"),vtMissing,"Sub-Child 2");
var_Items->PutCellState(var_Items->InsertItem(h,vtMissing,"Child 3"),long(0),1);
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->AddItem("Root 2");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->InsertItem(h,vtMissing,"Child 3");
spTree1->EndUpdate();
|
748
|
Displays the root item's index and value/caption using expressions

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
spTree1->PutAutoDrag(EXTREELib::exAutoDragPositionAny);
spTree1->PutSingleSel(VARIANT_FALSE);
spTree1->PutDrawGridLines(EXTREELib::exRowLines);
spTree1->PutGridLineStyle(EXTREELib::exGridLinesSolid);
spTree1->PutGridLineColor(RGB(208,208,208));
spTree1->GetConditionalFormats()->Add(L"%CC0 and %CX0",vtMissing)->PutBold(VARIANT_TRUE);
EXTREELib::IConditionalFormatPtr var_ConditionalFormat = spTree1->GetConditionalFormats()->Add(L"1",vtMissing);
var_ConditionalFormat->PutBold(VARIANT_TRUE);
var_ConditionalFormat->PutApplyTo(EXTREELib::FormatApplyToEnum(0x2));
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Description")));
var_Column->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column->PutPartialCheck(VARIANT_TRUE);
EXTREELib::IColumnPtr var_Column1 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Index")));
var_Column1->PutFormatColumn(L"1 index ``");
var_Column1->PutPosition(0);
var_Column1->PutWidth(16);
EXTREELib::IColumnPtr var_Column2 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Root-Index")));
var_Column2->PutFormatColumn(L"root(1 index ``)");
var_Column2->PutPosition(1);
var_Column2->PutWidth(32);
var_Column2->PutDef(EXTREELib::exCellBackColor,long(15790320));
EXTREELib::IColumnPtr var_Column3 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Root-Value")));
var_Column3->PutFormatColumn(L"root(%0)");
var_Column3->PutPosition(2);
var_Column3->PutWidth(32);
var_Column3->PutDef(EXTREELib::exCellBackColor,long(15790320));
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root 1");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(var_Items->InsertItem(h,vtMissing,"Child 2"),vtMissing,"Sub-Child 2");
var_Items->PutCellState(var_Items->InsertItem(h,vtMissing,"Child 3"),long(0),1);
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->AddItem("Root 2");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->InsertItem(h,vtMissing,"Child 3");
var_Items->PutExpandItem(h,VARIANT_TRUE);
spTree1->EndUpdate();
|
747
|
Displays the parent item's index and caption/value using expressions

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
spTree1->PutAutoDrag(EXTREELib::exAutoDragPositionAny);
spTree1->PutSingleSel(VARIANT_FALSE);
spTree1->PutDrawGridLines(EXTREELib::exRowLines);
spTree1->PutGridLineStyle(EXTREELib::exGridLinesSolid);
spTree1->PutGridLineColor(RGB(208,208,208));
spTree1->GetConditionalFormats()->Add(L"%CC0 and %CX0",vtMissing)->PutBold(VARIANT_TRUE);
EXTREELib::IConditionalFormatPtr var_ConditionalFormat = spTree1->GetConditionalFormats()->Add(L"1",vtMissing);
var_ConditionalFormat->PutBold(VARIANT_TRUE);
var_ConditionalFormat->PutApplyTo(EXTREELib::FormatApplyToEnum(0x2));
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Description")));
var_Column->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column->PutPartialCheck(VARIANT_TRUE);
EXTREELib::IColumnPtr var_Column1 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Index")));
var_Column1->PutFormatColumn(L"1 index `I`");
var_Column1->PutPosition(0);
var_Column1->PutWidth(16);
EXTREELib::IColumnPtr var_Column2 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Parent-Index")));
var_Column2->PutFormatColumn(L"parent(1 index `I`)");
var_Column2->PutPosition(1);
var_Column2->PutWidth(32);
var_Column2->PutDef(EXTREELib::exCellBackColor,long(15790320));
EXTREELib::IColumnPtr var_Column3 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Parent-Value")));
var_Column3->PutFormatColumn(L"parent(%0)");
var_Column3->PutPosition(2);
var_Column3->PutWidth(32);
var_Column3->PutDef(EXTREELib::exCellBackColor,long(15790320));
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root 1");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(var_Items->InsertItem(h,vtMissing,"Child 2"),vtMissing,"Sub-Child 2");
var_Items->PutCellState(var_Items->InsertItem(h,vtMissing,"Child 3"),long(0),1);
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->AddItem("Root 2");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->InsertItem(h,vtMissing,"Child 3");
var_Items->PutExpandItem(h,VARIANT_TRUE);
spTree1->EndUpdate();
|
746
|
Specify the size of the Columns panel

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderHeight(24);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
var_Columns->Add(L"City");
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Start")))->PutVisible(VARIANT_FALSE);
((EXTREELib::IColumnPtr)(var_Columns->Add(L"End")))->PutVisible(VARIANT_FALSE);
spTree1->PutColumnsFloatBarRect(L",,96");
spTree1->PutColumnsFloatBarVisible(EXTREELib::ColumnsFloatBarVisibleEnum(0x20 | EXTREELib::exColumnsFloatBarVisibleIncludeCheckColumns));
spTree1->EndUpdate();
|
745
|
Show a vertical line between pivot and Columns panel (EBN color)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->GetVisualAppearance()->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABRsIQAAYAQGKIYBkAKBQAGaAoDDUNQxQwAAxwfBMKgBBCLIxhEYobgmGIXRpFICQTIcBhaGIZRiAKCRTDmHwyRCNIwCLD8QxtDqBY4gOZZX") +
"hal4cJTgMaBYi+Pw3DZHcbvBRkewzHQAKgnSjoDhEMg1CTVVYTDKdOSzDyEX7sIAACpOIZQVJVEY1VT8cyxIyEZimSypWqiYJ0Ty6cQwTAIgI");
spTree1->PutBackground(EXTREELib::exColumnsFloatBackColor,0x1000000);
spTree1->PutHeaderHeight(24);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
var_Columns->Add(L"City");
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Start")))->PutVisible(VARIANT_FALSE);
((EXTREELib::IColumnPtr)(var_Columns->Add(L"End")))->PutVisible(VARIANT_FALSE);
spTree1->PutColumnsFloatBarVisible(EXTREELib::ColumnsFloatBarVisibleEnum(0x20 | EXTREELib::exColumnsFloatBarVisibleIncludeCheckColumns));
spTree1->EndUpdate();
|
744
|
Change the background of the Columns panel (EBN color)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->GetVisualAppearance()->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABNoCg6AADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6NIpAWLoJDCH4mSTHYxgJIMWwzDiBZgkCA4fiGEYnThCIxzT") +
"J0aw1CKbYRAKCUKoUAJFsSnQAJIgOO4lULPMIhDDQKQTIKBahoehqIhaEQyDSJNb2DCIahhMSEbKtCooDhGFZUWzLVxTJJNawHJqJJDuOTpSjKH4+RjWFKUXR9b4BJSN" +
"AgqeCQTiSWZEVxRUS0XbGCyZLSQY7uAAMKgOVoDYzdGLwHTtOwrMa1QAsDSbKqWZ5uRpHcQ5aAGN5DPbMbqwOaqLznAaLQLtG4RTikVRPTDYaj437+OaHGyNbI6HTNPp" +
"TlWDJWjYXI8l8C4fg6GYAAEEISgGJJGHQOocgyIwYnqKhYAAIQTH2MYRjQJBRAmZptmEAYIjGU5dk8UgOFgBJUgCTQIBYBoBmCCAmAqApghgDJUDmYQFCCZoEk2OBUm+" +
"BZPCgZgagaYZIHYHoHmGWBcm8NwiEiFJVgmYgji4Kg6GKSI2C6C5jAiRgygwIojiycINkyeJmAYPJjkiTg+g+ZAIkCdIQkyWQWDuDxkBkJhKguZAzlIRQzGQc5ODWFJl" +
"EkVhWhWZYJFYTYTmUE4yF6F5mAmBhihiZhJhYX4WmQaAUnWGpOlmNhuhuZwJkYcocmcSY4naHZlkmKhrDuJ5JnYfofmgCgGgKIJnlmXJ2h4TQKBosRokoNoOiOaQKDSd" +
"4kmiChMncPBpgoZoaiaaZKHaHonmmE5iiKJRpDicomimaoKiaKoqmqSoeiIPgogqPotiyaxKlYPA+GuCqbBMa5KnaPovmwCwGj6LgP24RIhiyCwmkqMpsksNpKD6LQLB" +
"qOIzi0SxWlaHZtAOahPssM5Wi+IYtlsXpijKbZ5lyTo5mAE4UlqOpjHOQpEjubyanKPJvEuNgVj2TY1CCao+k2G52AyP5wAwBp9DYZZ1CCaxsAABAEICA");
spTree1->PutBackground(EXTREELib::exColumnsFloatBackColor,0x1000000);
spTree1->PutHeaderHeight(24);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
var_Columns->Add(L"City");
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Start")))->PutVisible(VARIANT_FALSE);
((EXTREELib::IColumnPtr)(var_Columns->Add(L"End")))->PutVisible(VARIANT_FALSE);
spTree1->PutColumnsFloatBarVisible(EXTREELib::ColumnsFloatBarVisibleEnum(0x20 | EXTREELib::exColumnsFloatBarVisibleIncludeCheckColumns));
spTree1->EndUpdate();
|
743
|
Change the background of the Columns panel (solid color)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderHeight(24);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
var_Columns->Add(L"City");
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Start")))->PutVisible(VARIANT_FALSE);
((EXTREELib::IColumnPtr)(var_Columns->Add(L"End")))->PutVisible(VARIANT_FALSE);
spTree1->PutColumnsFloatBarVisible(EXTREELib::ColumnsFloatBarVisibleEnum(0x20 | EXTREELib::exColumnsFloatBarVisibleIncludeCheckColumns));
spTree1->PutBackground(EXTREELib::exColumnsFloatBackColor,RGB(240,240,240));
spTree1->EndUpdate();
|
742
|
Change the visual appearance of the Columns panel

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->GetVisualAppearance()->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABNoCg6AADACAxRDAMgBQKAAzQFAYahqGKGAAGOD4JhUAIIRZGMIjFDcEwxC6NIpAWLoJDCH4mSTHYxgJIMWwzDiBZgkCA4fiGEYnThCIxzT") +
"J0aw1CKbYRAKCUKoUAJFsSnQAJIgOO4lULPMIhDDQKQTIKBahoehqIhaEQyDSJNb2DCIahhMSEbKtCooDhGFZUWzLVxTJJNawHJqJJDuOTpSjKH4+RjWFKUXR9b4BJSN" +
"AgqeCQTiSWZEVxRUS0XbGCyZLSQY7uAAMKgOVoDYzdGLwHTtOwrMa1QAsDSbKqWZ5uRpHcQ5aAGN5DPbMbqwOaqLznAaLQLtG4RTikVRPTDYaj437+OaHGyNbI6HTNPp" +
"TlWDJWjYXI8l8C4fg6GYAAEEISgGJJGHQOocgyIwYnqKhYAAIQTH2MYRjQJBRAmZptmEAYIjGU5dk8UgOFgBJUgCTQIBYBoBmCCAmAqApghgDJUDmYQFCCZoEk2OBUm+" +
"BZPCgZgagaYZIHYHoHmGWBcm8NwiEiFJVgmYgji4Kg6GKSI2C6C5jAiRgygwIojiycINkyeJmAYPJjkiTg+g+ZAIkCdIQkyWQWDuDxkBkJhKguZAzlIRQzGQc5ODWFJl" +
"EkVhWhWZYJFYTYTmUE4yF6F5mAmBhihiZhJhYX4WmQaAUnWGpOlmNhuhuZwJkYcocmcSY4naHZlkmKhrDuJ5JnYfofmgCgGgKIJnlmXJ2h4TQKBosRokoNoOiOaQKDSd" +
"4kmiChMncPBpgoZoaiaaZKHaHonmmE5iiKJRpDicomimaoKiaKoqmqSoeiIPgogqPotiyaxKlYPA+GuCqbBMa5KnaPovmwCwGj6LgP24RIhiyCwmkqMpsksNpKD6LQLB" +
"qOIzi0SxWlaHZtAOahPssM5Wi+IYtlsXpijKbZ5lyTo5mAE4UlqOpjHOQpEjubyanKPJvEuNgVj2TY1CCao+k2G52AyP5wAwBp9DYZZ1CCaxsAABAEICA");
spTree1->PutBackground(EXTREELib::exColumnsFloatAppearance,0x1000000);
spTree1->PutBackground(EXTREELib::exColumnsFloatCaptionBackColor,RGB(246,246,246));
spTree1->PutBackColorHeader(0x1000000);
spTree1->PutHeaderHeight(24);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
var_Columns->Add(L"City");
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Start")))->PutVisible(VARIANT_FALSE);
((EXTREELib::IColumnPtr)(var_Columns->Add(L"End")))->PutVisible(VARIANT_FALSE);
spTree1->PutDescription(EXTREELib::exColumnsFloatBar,L"Show/Hide");
spTree1->PutColumnsFloatBarVisible(EXTREELib::exColumnsFloatBarVisibleIncludeCheckColumns);
spTree1->EndUpdate();
|
741
|
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (ditto mark)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutDrawGridLines(EXTREELib::exRowLines);
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Country")))->PutShowIdem(L"<fgcolor gray>〃");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("Spain");
var_Items->AddItem("Spain");
var_Items->AddItem("Spain");
var_Items->AddItem("Spain");
var_Items->AddItem("Germany");
var_Items->AddItem("Germany");
var_Items->AddItem("Germany");
var_Items->AddItem("Germany");
spTree1->EndUpdate();
|
740
|
Defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries (space)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutDrawGridLines(EXTREELib::exRowLines);
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Country")))->PutShowIdem(L" ");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("Spain");
var_Items->AddItem("Spain");
var_Items->AddItem("Spain");
var_Items->AddItem("Spain");
var_Items->AddItem("Germany");
var_Items->AddItem("Germany");
var_Items->AddItem("Germany");
var_Items->AddItem("Germany");
spTree1->EndUpdate();
|
739
|
Displays a glitch funnel for drop-down filter buttons (empty or active)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
EXTREELib::IAppearancePtr var_Appearance = spTree1->GetVisualAppearance();
var_Appearance->PutRenderType(-1);
var_Appearance->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABa8IQAAYAQGKIYBkAKBQAGaAoDDUNQxQwAAxwfBMKgBBCLIxhEYobgmGIXRpFMbxCKQahLEiTIhGUYJHgmK4tRiAUgxVDkBxrECZYqjcBZO") +
"iwLQ2TxDM7DNKUCBnIoABhGOaYDh+IQNQjUFKwTRFGRxK4EIRKAyTDLQdRyGSMMbjdQpBCbMiMRqhESKRq2UwYRYCFS1NalaztO6BUAvK67YrWez/YBfF+SfwGeqDYRe" +
"WAPfgWERnQrGMLxbD8KwZAKTRjkGJ4XhuB41TbQMqufL9ByXHKSSDpGjaXjeO5VVjYNAvS69UzXNq3bhtQAOXCMEwCgI=");
var_Appearance->Add(2,"CP:1 -2 0 0 0");
spTree1->PutDrawGridLines(EXTREELib::exAllLines);
spTree1->PutGridLineStyle(EXTREELib::exGridLinesGeometric);
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarButton,0x2000000);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarActive,0x2000001);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutBackColorHeader(RGB(255,255,255));
spTree1->PutHeaderHeight(24);
spTree1->PutHeaderVisible(VARIANT_TRUE);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"1st col")));
var_Column->PutDisplayFilterButton(VARIANT_TRUE);
var_Column->PutDisplayFilterPattern(VARIANT_FALSE);
var_Column->PutFilter(L"Item B");
var_Column->PutFilterType(EXTREELib::exFilter);
spTree1->GetColumns()->Add(L"2nd col");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("Item A");
var_Items->AddItem("Item B");
var_Items->AddItem("Item C");
spTree1->ApplyFilter();
spTree1->EndUpdate();
|
738
|
How can I replace or add an icon at runtime

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->ReplaceIcon(_bstr_t("gAAAABgYACEHgUJFEEAAWhUJCEJEEJggEhMCYEXjUbjkJQECj8gj8hAEjkshYEpk8kf8ClsulsvAExmcvf83js5nU7nkCeEcn8boMaocXosCB9Hn09pkzcEuoL/fE+O") +
"kYB0gB9YhIHrddgVcr9aktZADAD8+P8CgIA==",vtMissing);
spTree1->ReplaceIcon("C:\\images\\favicon.ico",long(0));
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Items")))->PutDef(EXTREELib::exCellCaptionFormat,long(1));
spTree1->GetItems()->AddItem("Item <img>1</img>");
spTree1->EndUpdate();
|
737
|
Can I set a filter that automatically adds a * before and after the word, so the user can just search for 'cat' and it becomes '*cat*' automatically

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Items")));
var_Column->PutDisplayFilterButton(VARIANT_TRUE);
var_Column->PutDisplayFilterPattern(VARIANT_TRUE);
var_Column->PutDef(EXTREELib::exFilterPatternTemplate,"*<%filter%>*");
var_Column->PutFilterType(EXTREELib::exPattern);
var_Column->PutFilter(L"1");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root 1");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->AddItem("Root 2");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
spTree1->ApplyFilter();
spTree1->EndUpdate();
|
736
|
The fine dotted lines in the control appear much thicker than the standard ones we've been using. How can we fix this

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutDrawGridLines(EXTREELib::exAllLines);
spTree1->PutGridLineStyle(EXTREELib::exGridLinesGeometric);
spTree1->PutColumnAutoResize(VARIANT_FALSE);
spTree1->GetColumns()->Add(L"Column 1");
spTree1->GetColumns()->Add(L"Column 2");
spTree1->GetColumns()->Add(L"Column 3");
spTree1->GetColumns()->Add(L"Column 4");
spTree1->EndUpdate();
|
735
|
Load data as a tree using a parent-id relationship

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
/*
Includes the definition for CreateObject function like follows:
#include <comdef.h>
IUnknownPtr CreateObject( BSTR Object )
{
IUnknownPtr spResult;
spResult.CreateInstance( Object );
return spResult;
};
*/
/*
Copy and paste the following directives to your header file as
it defines the namespace 'ADODB' for the library: 'Microsoft ActiveX Data Objects 6.1 Library'
#import <msado15.dll> rename("EOF","REOF")
*/
ADODB::_RecordsetPtr rs = ::CreateObject(L"ADODB.Recordset");
rs->Open("Select * FROM Employees WHERE 1=0","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.mdb",ADODB::adOpenStatic,ADODB::adLockOptimistic,0);
spTree1->PutDataSource(((ADODB::_RecordsetPtr)(rs)));
spTree1->GetColumns()->GetItem(long(0))->PutWidth(128);
rs = ::CreateObject(L"ADODB.Recordset");
rs->Open("Employees","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.mdb",ADODB::adOpenStatic,ADODB::adLockOptimistic,0);
spTree1->PutItems(rs->GetRows(0,vtMissing,vtMissing),";0;15");
spTree1->GetItems()->PutExpandItem(0,VARIANT_TRUE);
spTree1->EndUpdate();
|
734
|
Highlight the leaf items

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->GetConditionalFormats()->Add(L"%CC0=0",vtMissing)->PutForeColor(RGB(128,128,128));
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Item")))->PutWidth(16);
var_Columns->Add(L"Desc");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long hR = var_Items->AddItem("Root");
var_Items->PutCellCaption(hR,long(1),"The root directory /");
var_Items->PutExpandItem(hR,VARIANT_TRUE);
long h = var_Items->InsertItem(hR,vtMissing,"Home");
var_Items->PutCellCaption(h,long(1),"The home directory with user directories Alice and Bob");
var_Items->InsertItem(h,vtMissing,"Alice");
var_Items->InsertItem(h,vtMissing,"Bob");
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->InsertItem(hR,vtMissing,"Etc");
var_Items->PutCellCaption(h,long(1),"The etc directory with one configuration file");
h = var_Items->InsertItem(h,vtMissing,"nginx.conf");
var_Items->PutCellCaption(var_Items->InsertItem(hR,vtMissing,"Var"),long(1),"The var directory");
spTree1->EndUpdate();
|
733
|
Highlight the parent items

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->GetConditionalFormats()->Add(L"%CC0",vtMissing)->PutForeColor(RGB(255,0,0));
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Item")))->PutWidth(16);
var_Columns->Add(L"Desc");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long hR = var_Items->AddItem("Root");
var_Items->PutCellCaption(hR,long(1),"The root directory /");
var_Items->PutExpandItem(hR,VARIANT_TRUE);
long h = var_Items->InsertItem(hR,vtMissing,"Home");
var_Items->PutCellCaption(h,long(1),"The home directory with user directories Alice and Bob");
var_Items->InsertItem(h,vtMissing,"Alice");
var_Items->InsertItem(h,vtMissing,"Bob");
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->InsertItem(hR,vtMissing,"Etc");
var_Items->PutCellCaption(h,long(1),"The etc directory with one configuration file");
h = var_Items->InsertItem(h,vtMissing,"nginx.conf");
var_Items->PutCellCaption(var_Items->InsertItem(hR,vtMissing,"Var"),long(1),"The var directory");
spTree1->EndUpdate();
|
732
|
Highlight the item being expanded or collapsed

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->GetConditionalFormats()->Add(L"%CX0",vtMissing)->PutBold(VARIANT_TRUE);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
((EXTREELib::IColumnPtr)(var_Columns->Add(L"Item")))->PutWidth(16);
var_Columns->Add(L"Desc");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long hR = var_Items->AddItem("Root");
var_Items->PutCellCaption(hR,long(1),"The root directory /");
var_Items->PutExpandItem(hR,VARIANT_TRUE);
long h = var_Items->InsertItem(hR,vtMissing,"Home");
var_Items->PutCellCaption(h,long(1),"The home directory with user directories Alice and Bob");
var_Items->InsertItem(h,vtMissing,"Alice");
var_Items->InsertItem(h,vtMissing,"Bob");
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->InsertItem(hR,vtMissing,"Etc");
var_Items->PutCellCaption(h,long(1),"The etc directory with one configuration file");
h = var_Items->InsertItem(h,vtMissing,"nginx.conf");
var_Items->PutCellCaption(var_Items->InsertItem(hR,vtMissing,"Var"),long(1),"The var directory");
spTree1->EndUpdate();
|
731
|
Disable temporarily the column's sort, resize and drag and drop

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutSortBarVisible(VARIANT_TRUE);
spTree1->PutSortBarCaption(L"<fgcolor 808080><c>the header and the sort-bar are disabled (no drag and drop is allowed)");
spTree1->PutHeaderEnabled(VARIANT_FALSE);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Index")))->PutFormatColumn(L"1 index ``");
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Pos")))->PutFormatColumn(L"1 apos ``");
spTree1->GetColumns()->Add(L"Edit");
spTree1->PutGridLineStyle(EXTREELib::exGridLinesGeometric);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->PutGridLineColor(RGB(224,224,224));
spTree1->EndUpdate();
|
730
|
Expandable-caption

// AnchorClick event - Occurs when an anchor element is clicked.
void OnAnchorClickTree1(LPCTSTR AnchorID, LPCTSTR Options)
{
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
OutputDebugStringW( L"AnchorID" );
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_TRUE);
spTree1->PutTreeColumnIndex(-1);
spTree1->PutDrawGridLines(EXTREELib::exAllLines);
spTree1->PutGridLineStyle(EXTREELib::exGridLinesGeometric);
spTree1->PutBackColorAlternate(RGB(240,240,240));
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->GetColumns()->Add(L"Default");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("before item");
long h = var_Items->AddItem(_bstr_t("<solidline> <c><b>Bank Account</b></solidline><br>+ owner: String <r><a 1;e64=gA8ABzABvABsABpABkg8JABuABlAA+AAgAECMcTi4AMwAM4Aj") +
"MGhEGOUVAA4AAwk8plcqihwAElg0wiUlOkOiUEgQvgcFhsKhkIhUQiUUnccj0gn0jmMagUlowAMNOpEfkMNkkmlEqrctjQmAAjAA5AA2sssHcbnkdq1Ln1QtVSjQAAEB" +
"A==>▲</a><br><solidline>+ balance: Currency = 0</solidline><br>+ deposit(amount: Currency)<r><a 2;e64=gA8ABjAA+AECMwAM8DAB" +
"vABshoAOQAEAAHAAGEWjEajMGNoAMoAOgANERMgAOcHAAvAEJhcEh0Qh0Tg0CmkqMMFlUuhkxiMTisXjNCjk6EwAEYAHIAG1MjY7lUsnkwh8/nUClk5gwAAEBA==> " +
"650;</a><br>+ withdraw(amount: Currency)");
var_Items->PutCellCaptionFormat(h,long(0),EXTREELib::exHTML);
var_Items->PutCellSingleLine(h,long(0),EXTREELib::exCaptionWordWrap);
var_Items->AddItem("after item");
spTree1->EndUpdate();
|
729
|
Expandable-caption

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_TRUE);
spTree1->PutTreeColumnIndex(-1);
spTree1->PutDrawGridLines(EXTREELib::exAllLines);
spTree1->PutGridLineStyle(EXTREELib::exGridLinesGeometric);
spTree1->PutBackColorAlternate(RGB(240,240,240));
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->GetColumns()->Add(L"Default");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("before item");
long h = var_Items->AddItem("<solidline><b>Header</b></solidline><br>Line1<r><a ;exp=show lines>+</a><br>Line2<br>Line3");
var_Items->PutCellCaptionFormat(h,long(0),EXTREELib::exHTML);
var_Items->PutCellSingleLine(h,long(0),EXTREELib::exCaptionWordWrap);
var_Items->AddItem("after item");
spTree1->EndUpdate();
|
728
|
Force scrollbars hover-all feature
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->PutBackground(EXTREELib::exScrollHoverAll,-1);
|
727
|
Disable scrollbars hover-all feature (Windows 11 or greater)
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->PutBackground(EXTREELib::exScrollHoverAll,RGB(1,0,0));
|
726
|
Display a custom tooltip
// MouseMove event - Occurs when the user moves the mouse.
void OnMouseMoveTree1(short Button, short Shift, long X, long Y)
{
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->ShowToolTip(L"new content","",vtMissing,"+8","+8");
}
|
725
|
Shows the tooltip of the object moved relative to its default position

// MouseMove event - Occurs when the user moves the mouse.
void OnMouseMoveTree1(short Button, short Shift, long X, long Y)
{
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->ShowToolTip(L"<null>","<null>",vtMissing,"+8","+8");
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"tootip")))->PutToolTip(L"this is a tooltip assigned to a column");
|
724
|
Highlight the match once the filter is applied

// FilterChange event - Notifies your application that the filter is changed.
void OnFilterChangeTree1()
{
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
_variant_t format = spTree1->FormatABC(L"`lower(value) replace lower('` + value + `') with '<bgcolor 000000><fgcolor FFFFFF>` + value + `</fgcolor></bgcolor>'`",spTree1->GetFilterBarPromptPattern(),vtMissing,vtMissing);
spTree1->GetColumns()->GetItem(long(0))->PutFormatColumn(L"format");
spTree1->GetColumns()->GetItem(long(1))->PutFormatColumn(L"format");
spTree1->GetColumns()->GetItem(long(2))->PutFormatColumn(L"format");
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutSelBackColor(spTree1->GetBackColor());
spTree1->PutSelForeColor(spTree1->GetForeColor());
spTree1->PutColumnAutoResize(VARIANT_TRUE);
spTree1->PutContinueColumnScroll(VARIANT_FALSE);
spTree1->PutMarkSearchColumn(VARIANT_FALSE);
spTree1->PutSearchColumnIndex(1);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(23);
spTree1->PutBackColorLevelHeader(spTree1->GetBackColor());
spTree1->PutFilterBarCaption(L"`<b>` + value + `</b><r><fgcolor=808080>` + ( matchitemcount < 0 ? abs(matchitemcount + 1) + ` result(s)` : ``)");
spTree1->PutFilterBarPromptVisible(EXTREELib::FilterBarVisibleEnum(EXTREELib::exFilterBarCompact | EXTREELib::exFilterBarCaptionVisible | EXTREELib::exFilterBarVisible | EXTREELib::exFilterBarPromptVisible));
spTree1->PutFilterBarBackColor(spTree1->GetBackColor());
spTree1->PutFilterBarPromptPattern(L"and");
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(var_Columns->Add(L"Name")));
var_Column->PutDef(EXTREELib::exCellCaptionFormat,long(1));
var_Column->PutFormatColumn(L"lower(value)");
EXTREELib::IColumnPtr var_Column1 = ((EXTREELib::IColumnPtr)(var_Columns->Add(L"Title")));
var_Column1->PutDef(EXTREELib::exCellCaptionFormat,long(1));
var_Column1->PutFormatColumn(L"lower(value)");
EXTREELib::IColumnPtr var_Column2 = ((EXTREELib::IColumnPtr)(var_Columns->Add(L"City")));
var_Column2->PutDef(EXTREELib::exCellCaptionFormat,long(1));
var_Column2->PutFormatColumn(L"lower(value)");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h0 = var_Items->AddItem("Nancy Davolio");
var_Items->PutCellCaption(h0,long(1),"Sales Representative");
var_Items->PutCellCaption(h0,long(2),"Seattle");
h0 = var_Items->AddItem("Andrew Fuller");
var_Items->PutCellCaption(h0,long(1),"Vice President, Sales");
var_Items->PutCellCaption(h0,long(2),"Tacoma");
var_Items->PutSelectItem(h0,VARIANT_TRUE);
h0 = var_Items->AddItem("Janet Leverling");
var_Items->PutCellCaption(h0,long(1),"Sales Representative");
var_Items->PutCellCaption(h0,long(2),"Kirkland");
h0 = var_Items->AddItem("Margaret Peacock");
var_Items->PutCellCaption(h0,long(1),"Sales Representative");
var_Items->PutCellCaption(h0,long(2),"Redmond");
h0 = var_Items->AddItem("Steven Buchanan");
var_Items->PutCellCaption(h0,long(1),"Sales Manager");
var_Items->PutCellCaption(h0,long(2),"London");
h0 = var_Items->AddItem("Michael Suyama");
var_Items->PutCellCaption(h0,long(1),"Sales Representative");
var_Items->PutCellCaption(h0,long(2),"London");
h0 = var_Items->AddItem("Robert King");
var_Items->PutCellCaption(h0,long(1),"Sales Representative");
var_Items->PutCellCaption(h0,long(2),"London");
h0 = var_Items->AddItem("Laura Callahan");
var_Items->PutCellCaption(h0,long(1),"Inside Sales Coordinator");
var_Items->PutCellCaption(h0,long(2),"Seattle");
h0 = var_Items->AddItem("Anne Dodsworth");
var_Items->PutCellCaption(h0,long(1),"Sales Representative");
var_Items->PutCellCaption(h0,long(2),"London");
spTree1->EndUpdate();
|
723
|
ADOR, MDB (JET)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
spTree1->PutContinueColumnScroll(VARIANT_FALSE);
/*
Includes the definition for CreateObject function like follows:
#include <comdef.h>
IUnknownPtr CreateObject( BSTR Object )
{
IUnknownPtr spResult;
spResult.CreateInstance( Object );
return spResult;
};
*/
/*
Copy and paste the following directives to your header file as
it defines the namespace 'ADODB' for the library: 'Microsoft ActiveX Data Objects 6.1 Library'
#import <msado15.dll> rename("EOF","REOF")
*/
ADODB::_RecordsetPtr rs = ::CreateObject(L"ADOR.Recordset");
rs->Open("Orders","Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.mdb",ADODB::adOpenStatic,ADODB::adLockOptimistic,0);
spTree1->PutDataSource(((ADODB::_RecordsetPtr)(rs)));
|
722
|
Re-order the cell's caption, icons and images/pictures

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->Images(_bstr_t("gBJJgBAICAADAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEahkZAIAEEbjMjlErlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTq") +
"lVq1XrFZrVbrlTiFdib/sNjr9gs1nldlrlqtFtt0stlguNvulyh91ud1vVVvNuvt7wFHr9/vl3luEwOJouIq+Dw2KyGRyWTymVy2XzGZzUuiw+lmej0gkUaksljaAnmD" +
"cD/cEbf7w1+ufD/fEbeB028bYAO3enB6AB++4EoA4A4sb4vHjXJ4nG5vKAHA4ca6XBjTAD/Y2x/eB/jcB");
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"ToLeft")));
var_Column->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
EXTREELib::IColumnPtr var_Column1 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"ToRight")));
var_Column1->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column1->PutDef(EXTREELib::exCellDrawPartsOrder,"caption,picture,icons,icon,check");
spTree1->PutDefaultItemHeight(32);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Caption");
var_Items->PutCellImage(h,long(0),2);
var_Items->PutCellImages(h,long(0),"1,2");
var_Items->PutCellPicture(h,long(0),((ObjectPtr)(spTree1->ExecuteTemplate(_bstr_t("loadpicture(`gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLs") +
"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`)"))));
var_Items->PutCellCaption(h,long(1),var_Items->GetCellCaption(h,long(0)));
var_Items->PutCellHAlignment(h,long(1),EXTREELib::RightAlignment);
var_Items->PutCellImage(h,long(1),var_Items->GetCellImage(h,long(0)));
var_Items->PutCellImages(h,long(1),"2,1");
var_Items->PutCellPicture(h,long(1),((ObjectPtr)(var_Items->GetCellPicture(h,long(0)))));
h = var_Items->AddItem("<b>HTML</b> <off 4>Caption");
var_Items->PutCellCaptionFormat(h,long(0),EXTREELib::exHTML);
var_Items->PutCellImage(h,long(0),2);
var_Items->PutCellImages(h,long(0),"1,2");
var_Items->PutCellPicture(h,long(0),((ObjectPtr)(spTree1->ExecuteTemplate(_bstr_t("loadpicture(`gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLs") +
"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`)"))));
var_Items->PutCellCaption(h,long(1),var_Items->GetCellCaption(h,long(0)));
var_Items->PutCellCaptionFormat(h,long(1),EXTREELib::exHTML);
var_Items->PutCellHAlignment(h,long(1),EXTREELib::RightAlignment);
var_Items->PutCellImage(h,long(1),var_Items->GetCellImage(h,long(0)));
var_Items->PutCellImages(h,long(1),"2,1");
var_Items->PutCellPicture(h,long(1),((ObjectPtr)(var_Items->GetCellPicture(h,long(0)))));
spTree1->EndUpdate();
|
721
|
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column has been added.
void OnAddColumnTree1(LPDISPATCH Column)
{
// Column.Def(48) = 2
// Column.Def(49) = 2
}
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutImageSize(32);
spTree1->PutDefaultItemHeight(36);
spTree1->PutHeaderHeight(spTree1->GetDefaultItemHeight());
spTree1->PutSortBarHeight(spTree1->GetDefaultItemHeight());
spTree1->GetFont()->PutSize(_variant_t(long(16)));
spTree1->GetFilterBarFont()->PutSize(_variant_t(spTree1->GetFont()->GetSize()));
spTree1->GetToolTipFont()->PutSize(_variant_t(spTree1->GetFont()->GetSize()));
spTree1->PutIndent(26);
spTree1->Images(_bstr_t("gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOq") +
"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");
EXTREELib::IAppearancePtr var_Appearance = spTree1->GetVisualAppearance();
var_Appearance->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABfICg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"6CCY+QLIE5PfQgAL9I6eJABCCSQKkYx0HScRiwPBIbAZAYhCZqaKhWgkKI/WBQIABRDVLx5ESiLRtKy7Mq2bpvXBcNxXHalaztO68LxvKyqHb5fJ/PpgL4YHgmC4NQ7E" +
"MRwF6rfbyfZ7Xg/ORPTijZ4sdzMHTzJyscx3HqfaBoOaZU5eMLceTUMofHIndxCcasPbsOatVqjG5sYjcGC3La9cz3Pq/bpuDCbMxuaK1TrYXr1TTrcofBDldAxXRKDx" +
"RDWVhLnYOw9i6XxzjuXprCaOoKB6EwbiCZZCGOdZYlcT4xHmbhMnwNxtn+G5bmqdZ7n4Pw/i+X5zm+dQ9g4CAFjsfAJheOI8HsDoWDWTB/lwSAQkmA5PEgRYoDyDwYFY" +
"FoFmGCBmBqBphDgRJ0gOTIYBGRB/lyRh0iSCZbjYWJzgWDwIjYLoLmMCJGDKDJjBgWgqG6YhyhGHRzA2aJ1mCABOAiOJvhCZBJBYRoRmSCQmEqEQimkAZgg8TZnDCV4U" +
"kmCUmBKZYJGYWoWCUUhiFMNZckNUh2GENoaGaGZmgmJhqhqZpGGIEx2GYIxSGGGJdggWJth2Z4JmYeoemeSZ2H6H4hGmQhihyTRHGYLg7CiCgmgqIpokoNoOiOaJ4jqA" +
"ochqaZGgaCxpAoZoaiaaJqEmWIcGgShcnCJwqEqFoR3YOoFlgchflqNouiuawHmWSYqGkWZQhcatzmaOoumuSp2j6L5bBaKo0GQKRnGGCxqiyCwmkqMpsksNpOGUGI7A" +
"0ew1G0Rxlg0PptgsZuDG2Sx2l6N5tnYNZZjUDRXDCVo5l2FoymqOpukuNpujubwLjmWY5k0ZwxkaFxYlWdp6j6b5Lnafo/nABQdg2FxcUsY5BkmXAkmeQpckwNRrkKTh" +
"8CSHZBk4NwyC4KxxgMDwakOMZDn8GgwnGAo2C4cwthMcwmCcMoHBMHRehwTIghySYNksZwcH4HBMEsHx5hyPItiweYxnwSZEH4Mozn0fR+DMAo7EYJ50gkdZelKdNql2" +
"UgJn0GIukwH4HicQRai2GI4mSVpNl0dZGledgNgcYpYDWUx3FsOQi5YV5anaTY3G6W53A2RxylydxFjiaxEFCCgBBAQ==");
var_Appearance->Add(2,_bstr_t("gBFLBCJwBAEHhEJAAEhABcoFg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"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" +
"gRBCCQAgQEA==");
var_Appearance->Add(3,_bstr_t("gBFLBCJwBAEHhEJAAEhABQ4Fg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziaQAGgkNQwCSLIwjNIsBxPFKVQChEYxSjKA40SJNUgyj") +
"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");
var_Appearance->Add(4,_bstr_t("gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH") +
"LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKB" +
"UrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo" +
"3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDs" +
"YYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoV" +
"mWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoV" +
"oWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZi" +
"Se41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbh" +
"FCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==");
spTree1->PutBackColorHeader(0x4c6c6c6);
spTree1->PutSelBackColor(0x4000000);
spTree1->PutSelForeColor(RGB(0,0,1));
spTree1->PutCheckImage(EXTREELib::Unchecked,16777216);
spTree1->PutCheckImage(EXTREELib::Checked,33554432);
spTree1->PutCheckImage(EXTREELib::PartialChecked,50331648);
spTree1->PutBackground(EXTREELib::exSelBackColorFilter,spTree1->GetSelBackColor());
spTree1->PutBackground(EXTREELib::exSelForeColorFilter,spTree1->GetSelForeColor());
spTree1->PutBackground(EXTREELib::exBackColorFilter,spTree1->GetBackColor());
spTree1->PutBackground(EXTREELib::exForeColorFilter,spTree1->GetForeColor());
spTree1->PutBackground(EXTREELib::exCursorHoverColumn,-1);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarButton,0x4000000);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarActive,0x4010101);
spTree1->PutBackground(EXTREELib::exFooterFilterBarButton,0x40000ff);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->PutSortBarVisible(VARIANT_TRUE);
spTree1->PutBackColorSortBar(spTree1->GetBackColor());
spTree1->PutBackColorLevelHeader(spTree1->GetBackColor());
spTree1->PutFilterBarDropDownHeight(1);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Check")));
var_Column->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column->PutPartialCheck(VARIANT_TRUE);
var_Column->PutWidth(128);
var_Column->PutDisplayFilterButton(VARIANT_TRUE);
var_Column->PutFilterList(EXTREELib::exShowCheckBox);
EXTREELib::IColumnPtr var_Column1 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Pos")));
var_Column1->PutFormatColumn(L"1 pos ``");
var_Column1->PutAllowSort(VARIANT_FALSE);
var_Column1->PutWidth(48);
var_Column1->PutAllowSizing(VARIANT_FALSE);
var_Column1->PutAlignment(EXTREELib::CenterAlignment);
var_Column1->PutHeaderAlignment(EXTREELib::CenterAlignment);
EXTREELib::IColumnPtr var_Column2 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Image")));
var_Column2->PutDisplayFilterButton(VARIANT_TRUE);
var_Column2->PutFilterList(EXTREELib::FilterListEnum(EXTREELib::exShowExclude | EXTREELib::exShowCheckBox | EXTREELib::exSortItemsAsc));
var_Column2->PutFilterType(EXTREELib::exImage);
var_Column2->PutDisplayExpandButton(VARIANT_TRUE);
var_Column2->PutExpandColumns(L"1,2,3");
var_Column2->PutWidth(128);
var_Column2->PutHeaderImage(1);
EXTREELib::IColumnPtr var_Column3 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Images")));
var_Column3->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column3->PutWidth(196);
var_Column3->PutHTMLCaption(L"<img>1</img><img>2</img><img>3</img> Images");
spTree1->GetColumns()->GetItem("Pos")->PutPosition(3);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long hR = var_Items->AddItem("Root");
var_Items->PutItemDivider(hR,0);
var_Items->PutItemDividerLine(hR,EXTREELib::EmptyLine);
long h = var_Items->InsertItem(hR,vtMissing,"Child A");
var_Items->PutCellImage(h,long(2),1);
var_Items->PutCellImages(h,long(3),"1,2,3");
var_Items->PutCellCaption(h,long(3),"123");
h = var_Items->InsertItem(hR,vtMissing,"Child B");
var_Items->PutCellState(h,long(0),1);
var_Items->PutCellImage(h,long(2),3);
var_Items->PutCellImages(h,long(3),"2,3,1");
var_Items->PutCellCaption(h,long(3),"231");
var_Items->PutSelectItem(h,VARIANT_TRUE);
h = var_Items->InsertItem(hR,vtMissing,"Child C");
var_Items->PutCellImage(h,long(2),2);
var_Items->PutCellState(h,long(3),1);
var_Items->PutCellCaption(h,long(3),"312");
var_Items->PutCellImages(h,long(3),"3,1,2");
var_Items->PutExpandItem(hR,VARIANT_TRUE);
spTree1->EndUpdate();
|
720
|
ImageSize property on 16 (default) (specifies the size of control' icons/images/check-boxes/radio-buttons)

// AddColumn event - Fired after a new column has been added.
void OnAddColumnTree1(LPDISPATCH Column)
{
// Column.Def(48) = 2
// Column.Def(49) = 2
}
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutImageSize(16);
spTree1->Images(_bstr_t("gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOq") +
"dSqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVt" +
"tmp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8a" +
"cvQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtT" +
"GsbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgP" +
"nwD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg==");
EXTREELib::IAppearancePtr var_Appearance = spTree1->GetVisualAppearance();
var_Appearance->Add(4,_bstr_t("gBFLBCJwBAEHhEJAAEhABUYCg6AADACAxRDgMQBQKAAzQFAYbhkGCGAAGMZxRgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMIjH") +
"LUXxtDaIZwhEAoJb+RgAUY/cTzaAEUwHHiTKInaCQShsFYJUJAdRURQ9EwvCIZBpEWwLChENQwWLCNj2TScBwjCyqbale45ViqdoDU5EUiXJJ8ZxnECfYyrGjaMpCeKB" +
"UrGYTVRBIMxLLSia5oeJqMrnBpNVrIUgXCAGFwHK6BcauXIIDp6XoWWRbAAWDpVVzNNC3YzkCIceADHKiXxmVz4JLdGZ1QTGID2XaYaxWK4oZjsVSc4KDHbETbHFi9Fo" +
"3NaaxGisew+GYc4HlCR5NAAAIIEkQJSGMOgdE4RhYDwJJsAaAYQgmPpolCWgSCiBJzjcEIAkQXIBm8d5UhOQgCDUIBDDJDhgggJgKgKYJIDSVoDk8KBFF4OohEMZgWDs" +
"YYDj4GoGmGSB2B6B5iAiBgYDsYRjGSbIJo4RgqDuIpIAoLoLmMCJGDKDJjJiLA7xqUAAgGTwYnYPoPmQCQGEKEJkEkFg9gGY44BoRoSmSSQ2EKEggHgRhShSZRJFYVoV" +
"mWCRmFKFAgGOTheheZgJgYYoYmYSYWGaF4lkMMJ0hqZpJjYbobmcCZGHKHJmjmJh0h2Z4JmYcIaE8WZ2H6H5oAoBoCiCaBKBYfdjGoJoKiKaJKDaDojmkChGgmIgpCoV" +
"oWiWaJZiSd4mmmSh2h6J5qAqBoiiiaY5iSeIpmqComiqKpqkqNouiuah6hqMIsmsSpWiuGhP1kOoumuSp2j6L5sAsBo54gKwWkaMZsgsJpKjKbJLDaRYxYWRpSjSbIZi" +
"Se41m2CxmlqNptksdpejebR5iSfI4m4S4W16boLiaao6m5fJ9jubwLkaco8m8S5WnaPZunuOp4j6b5Lnac4SA0PAGlgP4wEwFwGkGcIMCcCpCnCCxiA8NYAAmMJfkSbh" +
"FCcFpFnGDBnBqRpUhuEwTDeZ5lHCfw6HIQxLCaAxygyJwqgGcATE4FA6hWY4tjEAAQBAgIA==");
spTree1->PutBackColorHeader(0x4c6c6c6);
spTree1->PutSelBackColor(0x4000000);
spTree1->PutSelForeColor(RGB(0,0,1));
spTree1->PutBackground(EXTREELib::exSelBackColorFilter,spTree1->GetSelBackColor());
spTree1->PutBackground(EXTREELib::exSelForeColorFilter,spTree1->GetSelForeColor());
spTree1->PutBackground(EXTREELib::exBackColorFilter,spTree1->GetBackColor());
spTree1->PutBackground(EXTREELib::exForeColorFilter,spTree1->GetForeColor());
spTree1->PutBackground(EXTREELib::exCursorHoverColumn,-1);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarButton,0x4000000);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarActive,0x4010101);
spTree1->PutBackground(EXTREELib::exFooterFilterBarButton,0x40000ff);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->PutSortBarVisible(VARIANT_TRUE);
spTree1->PutBackColorSortBar(spTree1->GetBackColor());
spTree1->PutBackColorLevelHeader(spTree1->GetBackColor());
spTree1->PutFilterBarDropDownHeight(1);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Check")));
var_Column->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column->PutPartialCheck(VARIANT_TRUE);
var_Column->PutWidth(128);
var_Column->PutDisplayFilterButton(VARIANT_TRUE);
var_Column->PutFilterList(EXTREELib::exShowCheckBox);
EXTREELib::IColumnPtr var_Column1 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Pos")));
var_Column1->PutFormatColumn(L"1 pos ``");
var_Column1->PutAllowSort(VARIANT_FALSE);
var_Column1->PutWidth(48);
var_Column1->PutAllowSizing(VARIANT_FALSE);
var_Column1->PutAlignment(EXTREELib::CenterAlignment);
var_Column1->PutHeaderAlignment(EXTREELib::CenterAlignment);
EXTREELib::IColumnPtr var_Column2 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Image")));
var_Column2->PutDisplayFilterButton(VARIANT_TRUE);
var_Column2->PutFilterList(EXTREELib::FilterListEnum(EXTREELib::exShowExclude | EXTREELib::exShowCheckBox | EXTREELib::exSortItemsAsc));
var_Column2->PutFilterType(EXTREELib::exImage);
var_Column2->PutDisplayExpandButton(VARIANT_TRUE);
var_Column2->PutExpandColumns(L"1,2,3");
var_Column2->PutWidth(128);
var_Column2->PutHeaderImage(1);
EXTREELib::IColumnPtr var_Column3 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Images")));
var_Column3->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column3->PutWidth(196);
var_Column3->PutHTMLCaption(L"<img>1</img><img>2</img><img>3</img> Images");
spTree1->GetColumns()->GetItem("Pos")->PutPosition(3);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long hR = var_Items->AddItem("Root");
var_Items->PutItemDivider(hR,0);
var_Items->PutItemDividerLine(hR,EXTREELib::EmptyLine);
long h = var_Items->InsertItem(hR,vtMissing,"Child A");
var_Items->PutCellImage(h,long(2),1);
var_Items->PutCellImages(h,long(3),"1,2,3");
var_Items->PutCellCaption(h,long(3),"123");
h = var_Items->InsertItem(hR,vtMissing,"Child B");
var_Items->PutCellState(h,long(0),1);
var_Items->PutCellImage(h,long(2),3);
var_Items->PutCellImages(h,long(3),"2,3,1");
var_Items->PutCellCaption(h,long(3),"231");
var_Items->PutSelectItem(h,VARIANT_TRUE);
h = var_Items->InsertItem(hR,vtMissing,"Child C");
var_Items->PutCellImage(h,long(2),2);
var_Items->PutCellState(h,long(3),1);
var_Items->PutCellCaption(h,long(3),"312");
var_Items->PutCellImages(h,long(3),"3,1,2");
var_Items->PutExpandItem(hR,VARIANT_TRUE);
spTree1->EndUpdate();
|
719
|
The user clicks the drop-down filter, select a value and the control's list filters for the selected item(s). Is there a way for when the user then goes to the next column to add another filter and the drop down arrow is clicked for the list of values they can filter by to be limited to what is being displayed in the list due to the first filter they set

// AddColumn event - Fired after a new column has been added.
void OnAddColumnTree1(LPDISPATCH Column)
{
}
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
/*
Includes the definition for CreateObject function like follows:
#include <comdef.h>
IUnknownPtr CreateObject( BSTR Object )
{
IUnknownPtr spResult;
spResult.CreateInstance( Object );
return spResult;
};
*/
/*
Copy and paste the following directives to your header file as
it defines the namespace 'ADODB' for the library: 'Microsoft ActiveX Data Objects 6.1 Library'
#import <msado15.dll> rename("EOF","REOF")
*/
ADODB::_RecordsetPtr rs = ::CreateObject(L"ADOR.Recordset");
rs->Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.accdb",ADODB::adOpenStatic,ADODB::adLockOptimistic,0);
spTree1->PutDataSource(((ADODB::_RecordsetPtr)(rs)));
spTree1->GetColumns()->GetItem("ShipVia")->PutPosition(2);
spTree1->EndUpdate();
|
718
|
Is it possible to set from code, a column sort without being inserted in the sortbar

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutColumnAutoResize(VARIANT_FALSE);
/*
Includes the definition for CreateObject function like follows:
#include <comdef.h>
IUnknownPtr CreateObject( BSTR Object )
{
IUnknownPtr spResult;
spResult.CreateInstance( Object );
return spResult;
};
*/
/*
Copy and paste the following directives to your header file as
it defines the namespace 'ADODB' for the library: 'Microsoft ActiveX Data Objects 6.1 Library'
#import <msado15.dll> rename("EOF","REOF")
*/
ADODB::_RecordsetPtr rs = ::CreateObject(L"ADOR.Recordset");
rs->Open("Orders","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Program Files\\Exontrol\\ExTree\\Sample\\Access\\sample.accdb",ADODB::adOpenKeyset,ADODB::adLockOptimistic,0);
spTree1->PutDataSource(((ADODB::_RecordsetPtr)(rs)));
spTree1->PutSortBarVisible(VARIANT_TRUE);
spTree1->PutLayout(L"singlesort=\"C1:1\"");
spTree1->EndUpdate();
|
717
|
Is it possible to view all events the control fires
// Event event - Notifies the application once the control fires an event.
void OnEventTree1(long EventID)
{
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
OutputDebugStringW( _bstr_t(spTree1->GetEventParam(-2)) );
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Tasks")));
var_Column->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
var_Column->PutPartialCheck(VARIANT_TRUE);
var_Column->PutDef(EXTREELib::exCellCaptionFormat,long(1));
var_Column->PutFormatColumn(L"value + (%CS0 = 1 ? `<r><fgcolor=808080>(checked)` : ``)");
spTree1->PutHeaderVisible(VARIANT_TRUE);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Project");
long hChild = var_Items->InsertItem(h,vtMissing,"Task 1");
var_Items->PutSelectItem(hChild,VARIANT_TRUE);
hChild = var_Items->InsertItem(h,vtMissing,"Task 2");
var_Items->PutCellState(hChild,long(0),1);
hChild = var_Items->InsertItem(h,vtMissing,"Task 3");
var_Items->PutCellState(hChild,long(0),1);
var_Items->PutExpandItem(h,VARIANT_TRUE);
spTree1->EndUpdate();
|
716
|
How can I prevent expanding/collapsing the child items

// BeforeExpandItem event - Fired before an item is about to be expanded (collapsed).
void OnBeforeExpandItemTree1(long Item, VARIANT FAR* Cancel)
{
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
Cancel = spTree1->GetItems()->GetItemParent(Item);
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutSingleSel(VARIANT_FALSE);
spTree1->GetColumns()->Add(L"Default");
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root 1");
var_Items->InsertItem(var_Items->InsertItem(h,vtMissing,"Child 1.1"),vtMissing,"Child");
var_Items->InsertItem(h,vtMissing,"Child 1.2");
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->AddItem("Root 2");
var_Items->InsertItem(var_Items->InsertItem(h,vtMissing,"Child 2.1"),vtMissing,"Child");
var_Items->InsertItem(h,vtMissing,"Child 2.2");
var_Items->PutExpandItem(h,VARIANT_TRUE);
spTree1->EndUpdate();
|
715
|
How can I display an item of picture type

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
spTree1->PutScrollBySingleLine(VARIANT_FALSE);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutHeaderHeight(24);
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Artikel")))->PutHTMLCaption(L"<u>Artikel");
((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Waarde")))->PutHTMLCaption(L"<u>Waarde");
spTree1->PutHTMLPicture(L"T22128","c:\\exontrol\\images\\zipdisk.gif");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("T22128-28)2D");
long h1 = var_Items->InsertItem(h,vtMissing,"<img>T22128:128</img>");
var_Items->PutCellCaptionFormat(h1,long(0),EXTREELib::exHTML);
var_Items->PutItemHeight(h1,128);
h1 = var_Items->InsertItem(h,vtMissing,"werkvoorbereiding");
var_Items->PutCellCaption(h1,long(1),"5.80");
var_Items->PutCellBold(h1,long(1),VARIANT_TRUE);
var_Items->PutCellCaption(var_Items->InsertItem(h1,vtMissing,"Type"),long(1),"Eenvoudig");
var_Items->PutCellCaption(var_Items->InsertItem(h1,vtMissing,"Prijs p/uur"),long(1),"60,00");
var_Items->PutCellCaption(var_Items->InsertItem(h1,vtMissing,"Marhe"),long(1),"15,00%");
var_Items->PutCellCaption(var_Items->InsertItem(h1,vtMissing,"Insteltijd min."),long(1),"5,00");
var_Items->PutCellCaption(var_Items->InsertItem(h1,vtMissing,"Aantal"),long(1),long(1));
var_Items->PutCellCaption(var_Items->InsertItem(h1,vtMissing,"Kostprije"),long(1),"5,00");
var_Items->PutExpandItem(h1,VARIANT_TRUE);
h1 = var_Items->InsertItem(h,vtMissing,"materiall");
var_Items->PutCellCaption(h1,long(1),"14.82");
var_Items->PutCellBold(h1,long(1),VARIANT_TRUE);
var_Items->PutItemHasChildren(h1,VARIANT_TRUE);
h1 = var_Items->InsertItem(h,vtMissing,"snijden");
var_Items->PutCellCaption(h1,long(1),"3.13");
var_Items->PutCellBold(h1,long(1),VARIANT_TRUE);
var_Items->PutItemHasChildren(h1,VARIANT_TRUE);
var_Items->PutExpandItem(h,VARIANT_TRUE);
spTree1->EndUpdate();
|
714
|
Dark mode

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
_bstr_t back = 65536;
_bstr_t fore = 16777215;
spTree1->GetVisualAppearance()->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABXUIQAAYAQGKIcBiAKBQAGYBIJDEMgzDDAUBjKKocQTC4AIQjCK4JDKHYJRpHEZyCA8EhqGASRAFUQBYiWE4oSpLABQaK0ZwIGyRIrkGQgQ") +
"gmPYDSDNU4zVIEEglBI0TDNczhNDENgtGYaJqHIYpZBcM40TKkEZoSIITZcRrOEBiRL1S0RBhGcRUHZlWzdN64LhuK47UrWdD/XhdVzXRbjfz1Oq+bxve48Br7A5yYTh" +
"dr4LhOFQ3RjIL4xbIcUwGe6VZhjOLZXjmO49T69HTtOCYBEBA");
spTree1->GetVisualAppearance()->Add(2,_bstr_t("gBFLBCJwBAEHhEJAAEhABPMIQAAYAQGKIcBiAKBQAGaAoDDcMgwQwAAxjIKUEwsACEIrjKCYVgOHYYQjGMZwHCMIhiGwcAChEZYHgkMYmDAMUhSE78axHG6PY7kKZ4b") +
"iaKIqQLLEhSfJ0YyBECBZpfebIbjmIZMSLEIxDKItJSpCIaRgqWS6ahGO4JUbUFLQHT9IR4daIYRgEEBA");
spTree1->GetVisualAppearance()->Add(3,_bstr_t("gBFLBCJwBAEHhEJAAEhABUUIQAAYAQGKIcBiAKBQAGaAoDDcMgwQwAAxjIKUEwsACEIrjKCYVgOHYYQjGMZwGAsEwjAoYAChEaILgkMw2DBIQwgJIMEr/G6RZxjeL5C") +
"jmG4nDhKMpybAcXxjBIYZJgOQpXb+PobTrNNLzfRFAxVAaWJikcZ4HpIAJNVLFdQ0XYMNSBISsBqrKiKcpeIIDWBZMbRZT1ZABCIZBpEW6LahENQwXrCN74DYkNTdKax" +
"bbuaaXLhGCYBgIA==");
spTree1->PutHeaderAppearance(EXTREELib::Bump);
spTree1->PutBackColor(back);
spTree1->PutBackColorHeader(back);
spTree1->PutBackColorLevelHeader(back);
spTree1->PutBackColorSortBar(back);
spTree1->PutBackColorSortBarCaption(back);
spTree1->PutFilterBarBackColor(back);
spTree1->PutFilterBarForeColor(fore);
spTree1->PutForeColor(fore);
spTree1->PutForeColorHeader(fore);
spTree1->PutForeColorSortBar(fore);
spTree1->PutSelBackColor(fore);
spTree1->PutSelForeColor(back);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarButton,0x1000000);
spTree1->PutBackground(EXTREELib::BackgroundPartEnum(0x10 | EXTREELib::exCellButtonUp),0x2000000);
spTree1->PutBackground(EXTREELib::exCursorHoverColumn,-1);
spTree1->PutBackground(EXTREELib::exToolTipAppearance,0x3000000);
spTree1->PutBackground(EXTREELib::exToolTipBackColor,back);
spTree1->PutBackground(EXTREELib::exToolTipForeColor,fore);
spTree1->PutBackground(EXTREELib::exSelBackColorFilter,fore);
spTree1->PutBackground(EXTREELib::exSelForeColorFilter,back);
spTree1->PutBackground(EXTREELib::exBackColorFilter,back);
spTree1->PutBackground(EXTREELib::exForeColorFilter,fore);
spTree1->PutBackground(EXTREELib::exSortBarLinkColor,back);
spTree1->PutBackground(EXTREELib::BackgroundPartEnum(0x80 | EXTREELib::exDateSelect),0x2000000);
spTree1->PutBackground(EXTREELib::BackgroundPartEnum(0x80 | EXTREELib::exDateSeparatorBar),0x2000000);
spTree1->PutBackground(EXTREELib::exTreeLinesColor,fore);
spTree1->PutDescription(EXTREELib::exFilterBarExclude,L"<bgcolor 0><fgcolor ffffff> Exclude </fgcolor></bgcolor>");
spTree1->EndUpdate();
|
713
|
How can I specify the cell's outline, border or lines around, when the cell gets selected

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->AttachTemplate("handle AddColumn(Column){Column{Def(48)=4;Def(49)=4;}}");
EXTREELib::IAppearancePtr var_Appearance = spTree1->GetVisualAppearance();
var_Appearance->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSpEEg7BKMYwjOJgFgmEQxDANIBQSKoaQiGQYYLhEZAEiONoaDJCM4wH") +
"IMQxHCKTZRkGcfaRCGSfIzpGKpVgOTYiTbPcIyQKtBxDIydJTmeQQQhsFIJU7SdVUPDUJZlWbLAwWTAYazXCKRZBpeJqdo6Y5RUDKUqSdLUYyvEq7ZqnOIpw5vICpaCq" +
"Op6HqKFpiXSAFL1fLmAwvPKrJjoeqpWpyCaRZQAGg4dbEdTNNCIbatQANKrCSpgZ7sMB6Di2L4TPS2awoWgRYyTFZMbBAeQ7LC1c45Fqrd4zS4dSxKCahcLxFiaNpYZY" +
"njUap1jGPJlkuAgAkidB3nceZsCQEQJCgGhMGcQ4pkiSxEAAOYpiQIhvkYNA2gSCg5n+LIoGILowFyXQoAYAoAmASAWAaAZgggJgKF2T54DYDoDmECBGBKBJgGgTgWgW" +
"YRoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChixULILGGGAWDCCgjCiTgrg0YxojoC4OmOSJ2D6D5kAgJLFgABAEICA=");
var_Appearance->Add(2,"CP:1 -4 0 0 0");
spTree1->PutSelBackColor(0x2000000);
spTree1->PutSelForeColor(RGB(0,0,1));
spTree1->PutFullRowSelect(VARIANT_FALSE);
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->PutDefaultItemHeight(24);
spTree1->PutHeaderHeight(24);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->GetColumns()->Add(L"C1");
spTree1->GetColumns()->Add(L"C2");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->PutCellCaption(var_Items->AddItem("Cell 1"),long(1),"Cell 2");
var_Items->PutCellCaption(var_Items->AddItem("Cell 3"),long(1),"Cell 4");
spTree1->GetItems()->PutSelectPos(long(1));
spTree1->PutSelectColumnIndex(1);
spTree1->EndUpdate();
|
712
|
How can I specify the cell's outline, border or lines around, when the item gets selected

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->AttachTemplate("handle AddColumn(Column){Column{Def(48)=4;Def(49)=4;}}");
spTree1->GetVisualAppearance()->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSpEEg7BKMYwjOJgFgmEQxDANIBQSKoaQiGQYYLhEZAEiONoaDJCM4wH") +
"IMQxHCKTZRkGcfaRCGSfIzpGKpVgOTYiTbPcIyQKtBxDIydJTmeQQQhsFIJU7SdVUPDUJZlWbLAwWTAYazXCKRZBpeJqdo6Y5RUDKUqSdLUYyvEq7ZqnOIpw5vICpaCq" +
"Op6HqKFpiXSAFL1fLmAwvPKrJjoeqpWpyCaRZQAGg4dbEdTNNCIbatQANKrCSpgZ7sMB6Di2L4TPS2awoWgRYyTFZMbBAeQ7LC1c45Fqrd4zS4dSxKCahcLxFiaNpYZY" +
"njUap1jGPJlkuAgAkidB3nceZsCQEQJCgGhMGcQ4pkiSxEAAOYpiQIhvkYNA2gSCg5n+LIoGILowFyXQoAYAoAmASAWAaAZgggJgKF2T54DYDoDmECBGBKBJgGgTgWgW" +
"YRoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChixULILGGGAWDCCgjCiTgrg0YxojoC4OmOSJ2D6D5kAgJLFgABAEICA=");
spTree1->PutSelBackColor(0x1000000);
spTree1->PutSelForeColor(RGB(0,0,1));
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->PutDefaultItemHeight(24);
spTree1->PutHeaderHeight(24);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->GetColumns()->Add(L"C1");
spTree1->GetColumns()->Add(L"C2");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->PutCellCaption(var_Items->AddItem("Cell 1"),long(1),"Cell 2");
var_Items->PutCellCaption(var_Items->AddItem("Cell 3"),long(1),"Cell 4");
var_Items->PutSelectPos(long(1));
spTree1->EndUpdate();
|
711
|
How can I specify the cell's outline, border or lines around

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->AttachTemplate("handle AddColumn(Column){Column{Def(48)=4;Def(49)=4;}}");
spTree1->GetVisualAppearance()->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABPEGACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSpEEg7BKMYwjOJgFgmEQxDANIBQSKoaQiGQYYLhEZAEiONoaDJCM4wH") +
"IMQxHCKTZRkGcfaRCGSfIzpGKpVgOTYiTbPcIyQKtBxDIydJTmeQQQhsFIJU7SdVUPDUJZlWbLAwWTAYazXCKRZBpeJqdo6Y5RUDKUqSdLUYyvEq7ZqnOIpw5vICpaCq" +
"Op6HqKFpiXSAFL1fLmAwvPKrJjoeqpWpyCaRZQAGg4dbEdTNNCIbatQANKrCSpgZ7sMB6Di2L4TPS2awoWgRYyTFZMbBAeQ7LC1c45Fqrd4zS4dSxKCahcLxFiaNpYZY" +
"njUap1jGPJlkuAgAkidB3nceZsCQEQJCgGhMGcQ4pkiSxEAAOYpiQIhvkYNA2gSCg5n+LIoGILowFyXQoAYAoAmASAWAaAZgggJgKF2T54DYDoDmECBGBKBJgGgTgWgW" +
"YRoFYGIGmGOBqByB5hCgegggiYJYgoJIICIaIeByChixULILGGGAWDCCgjCiTgrg0YxojoC4OmOSJ2D6D5kAgJLFgABAEICA=");
spTree1->PutSelBackMode(EXTREELib::exTransparent);
spTree1->PutShowFocusRect(VARIANT_FALSE);
spTree1->PutDefaultItemHeight(24);
spTree1->PutHeaderHeight(24);
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->GetColumns()->Add(L"C1");
spTree1->GetColumns()->Add(L"C2");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->PutCellCaption(var_Items->AddItem("Cell 1"),long(1),"Cell 2");
long h = var_Items->AddItem("Cell 2");
var_Items->PutCellCaption(h,long(1),"Cell 3");
var_Items->PutCellBackColor(h,long(1),0x1000000);
spTree1->EndUpdate();
|
710
|
Is it possible to highligth the match while a filter is applied

// AddColumn event - Fired after a new column has been added.
void OnAddColumnTree1(LPDISPATCH Column)
{
// Column.Def(17) = 1
}
// FilterChange event - Notifies your application that the filter is changed.
void OnFilterChangeTree1()
{
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
_variant_t format = spTree1->FormatABC(L"`value replace '` + value + `' with '<bgcolor 000000><fgcolor FFFFFF>` + value + `</fgcolor></bgcolor>'`",spTree1->GetFilterBarPromptPattern(),vtMissing,vtMissing);
spTree1->GetColumns()->GetItem(long(0))->PutFormatColumn(L"format");
spTree1->GetColumns()->GetItem(long(1))->PutFormatColumn(L"format");
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutDrawGridLines(EXTREELib::exVLines);
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->GetColumns()->Add(L"Col 1");
spTree1->GetColumns()->Add(L"Col 2");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->PutCellCaption(var_Items->AddItem("219 Smith"),long(1),"Ignacio 1234");
var_Items->PutCellCaption(var_Items->AddItem("1666 County Road 309A"),long(1),"897 Manassa");
var_Items->PutCellCaption(var_Items->AddItem("38 Lone Pine"),long(1),"Durango 11");
var_Items->PutCellCaption(var_Items->AddItem("612 Jachim Street"),long(1),"Lamar 222");
spTree1->PutFilterBarPromptPattern(L"1");
spTree1->PutFilterBarPromptVisible(EXTREELib::FilterBarVisibleEnum(EXTREELib::exFilterBarCompact | EXTREELib::exFilterBarSingleLine | EXTREELib::exFilterBarVisible | EXTREELib::exFilterBarPromptVisible));
spTree1->PutFilterBarPromptType(EXTREELib::FilterPromptEnum(EXTREELib::exFilterPromptCaseSensitive | EXTREELib::exFilterPromptContainsAll));
spTree1->EndUpdate();
|
709
|
Is it possible to highlight the column's header once a filter is applied (sample 2)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
EXTREELib::IAppearancePtr var_Appearance = spTree1->GetVisualAppearance();
var_Appearance->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABO8GACAADACAxRDgMQBQKAAzQFAYbBuGCGAAGIYBTgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwQgmNYDSBMcbwS") +
"AsXRYFocJ5gOT6AjKBA2UclEZpajiTY3ABUEgUS5oOBIACqariaQJAAiCRQGiYZyHKaRSwPBKFYDIIjbJheTIDChNVxUcDENQjJqLBIDRzbarye59YBfeBXdgmA4LQbD" +
"MRwNgMMQTDqKYbkOQZHbeGKAWTMEZzJj8cxTEqIaBhGTLfojSZMS7UGK1LLtMyHI6kP7sOiLfi2W4/W7XV72F79TzXIa2ZBuO57bhnAZ/VzGNj4PRNezfRqicjsGxcZw" +
"Xg+TpQj0ew6gSOw7wSbozjsfYXi8PwMnSc52leHotl+MxjmoXh2nybxOH+SQtnYXx+D2P4vGMB56hQf5PCgBYeDwYBCEo1xggebgKH6IIDBYBgkiAQ5FgYPAhEIRgWGq" +
"DBoC4GoCiGCBYhGBQPAWdIQp0eIUiWCZigiJgqgqYpIioJQhmIMhBH0NxjEMag2g2Y4ImYOoOmOSJeDQNxXlOLR3ECUAQICA=");
var_Appearance->Add(2,_bstr_t("gBFLBCJwBAEHhEJAAEhABgsHQAAYAQGKIcBiAKBQAGaAoDDYNwwQwAAxDAKcEwsACEIrjKCRShyCYZRrGUgRCKQahLEiTIhGUYJHgmK4tRoAUgxWCEExrAaQJjjeCQF") +
"i6LAtDhPMByfQEZQIGyjkgjNLUcSbG4AKgkCiXfpUAJVP7FcgSABEEigNIxToOU4jFgeCYLQKQRK2RC9GQGFCbLhpYKIahGTYWVheN5XXblez9P7ABQwKCcAwXBp7YIK" +
"AT4XBIdYdQ7IL4xGA0AJPFoJC7mOQ5XiYAIBAZ/RL0LCcbxHHafVboQj6JouD5PUDVNY1XBdPynI6CbLhWy6Dq4UZzPwzeBifSHfDjRoJcCZe71KY3GwSEboNA6Kp+QB" +
"HAmZoZjSPYIEiF47lOLJVnuYofBwJJHmaQoYj0MIRHeM4/m6cJ8B+fpBHQJ5SGKPYYH8OYMk+P5Bn4fxaAYZAvEIX4RgUWBGgCCAmAqApgkgNgOgMEYlGASoEkQeBWBa" +
"BZhggZgagaYRoEwShWA6NZZAMQBAICA==");
spTree1->PutBackground(EXTREELib::exHeaderFilterBarButton,0x1000000);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarActive,0x2000000);
spTree1->PutBackground(EXTREELib::exCursorHoverColumn,-1);
spTree1->PutHeaderHeight(28);
spTree1->PutBackColorHeader(RGB(255,255,255));
spTree1->PutDrawGridLines(EXTREELib::exRowLines);
spTree1->PutHeaderVisible(VARIANT_TRUE);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
((EXTREELib::IColumnPtr)(var_Columns->Add(L"C1")))->PutDisplayFilterButton(VARIANT_TRUE);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(var_Columns->Add(L"C2")));
var_Column->PutDisplayFilterButton(VARIANT_TRUE);
var_Column->PutFilter(L"Item 2");
var_Column->PutFilterType(EXTREELib::exFilter);
((EXTREELib::IColumnPtr)(var_Columns->Add(L"C3")))->PutDisplayFilterButton(VARIANT_TRUE);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Item 1");
var_Items->PutCellCaption(h,long(1),"Item 2");
var_Items->PutCellCaption(h,long(2),"Item 3");
h = var_Items->AddItem("Item 4");
var_Items->PutCellCaption(h,long(1),"Item 5");
var_Items->PutCellCaption(h,long(2),"Item 6");
spTree1->ApplyFilter();
spTree1->EndUpdate();
|
708
|
How can I make the expand/collapse glyphs DPI aware

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
_bstr_t size = 2;
spTree1->BeginUpdate();
EXTREELib::IAppearancePtr var_Appearance = spTree1->GetVisualAppearance();
var_Appearance->Add(3,_bstr_t("gBFLBCJwBAEHhEJAAEhEGAUHQAAYAQGKIcBiAKBQAGaAoDDYOA4QwAAxDAKcEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBRfIUEghGyNZjgNzQc") +
"CQAI8T5IUgARBJIDSMY6DpOIxYHgmC4DEITNLxOK0EhRHCBZrgOCAYhqEY1Ro+dhPFYjVTMdK0LRtKy7Mq2aJmOpZDxWE7dZKpO5fbxXS67cr2fp/YBed4rfa7KTlOBK" +
"cRQRBEFQPDqPZBkORZHh2FoLRJKbgtHJmHYNQWhVyYBbNCyTI6lahpeuHBx1QaWWxjbCMEr6bpoWLbFi3Ha1UzrPa8b5vSw7Gr+HzYQTHGPXGqaYJdZrnea6B7+U5XUJ" +
"rnSOZciYHwhAeR5HDK+JVGqKRRmScx5HyfRei+H5bmmcp4Fi8o/CGGJKGQKZUGoFQigUPIiCeSZXnyHB6l0SAJn8JxfkIeZ5CgXxjCCAhyB8QgIlAM4MlKAIcCaIBIGY" +
"GoGGEYhqBMMxgnICgRDUDQjESGwmAkWBuCqBoiHIVgkDQYgYESWg2E0YhohcJQigITg3CQSRyEyEYGGOWJwhQJD4FiFIMk0aJFGsIBkkOBJeDc+AchYJwJgIWhSgYZQp" +
"FIVoVGOGQ4l2EwIBWMhgDmDhThCEwkAiaJchKDhjhgZhsCUY4iFCEoZkiaYQmSGAWhWQhgDuDpTjCDQiEgchAg0IpJBoDoFiEKBqCaCAimgIguH8IZnkPUhcBcJg+hGJ" +
"ZnloYJsiaKZKGa24YnWSR0CkKhCA2CxlCqColhAYpqEKER0DqVZ0A0ASAgA==");
var_Appearance->Add(4,_bstr_t("gBFLBCJwBAEHhEJAAEhABAQCg6AADACAxRDgMQBQKAAzQFAYbBwHCGAAGIYBTgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACjeQYJBCNYbTJAbqhY") +
"IgAR3HqQZABCCSQKkYx0HScRiwPBMFwGIQmaaicZoJCiN4DTZAcIBRDUIxpDR9bBeKw3KqVaZnWhaNpWXZlTzKdSxXisF67RZSdi/XgvF5XXblez9P69LwXe5mUrGbyV" +
"YghCCIKgeG4dR7IMhyLDcKQXCCVW7aGSsOwbAqAXpdGAXTQdDyLJKnaZqOi6BjjA4rNbHGIYJb1XTRMa1LJuG5LJrOeZ3Xre4BLfh1VoFRpjWIYNY1QS7TLOczzfRdDx" +
"TiGVpkjCeJoD4Ng1hSRxiisVRKg8D4PkWZJznmPQ+F8Xx5guWpjHGWYMiYQodEaIRSCgU5KCSeh3naHB/iAAh9n8fwfgIeZ1CgXwjCCAhxl8AgIlAM4MlKAIcCaD54FY" +
"FoFmGCBmBaBIJigPJNgKSAoDSVC+BIbIYCUYYoiYKoJgkWIMlGCAglMaJZDWCYiFyFIJkkOJYhEJc7G4PYPCOaJshQJBjgiVIUgyDRokEaggGSQ4El4N1CBiFgnAmAha" +
"FKFZlFkShUhWJRYmITg3GSQgFGuGBOGOFJkCSSQCDoNgkiOCY0hUJJmmmQhvhqZtYmUOQmBWIRvhgTpjjSbAjEiEgchBZgyEaBIhigWgegqIhIjoDILiACB5nTL5WnWR" +
"YOiSKYJnqGQ7CmOh2hqJ5OkYORxFyShKhSAxihkOomioY5YiqFIkFyTo1HkAxAEAgIA==");
var_Appearance->Add(1,spTree1->FormatABC(L"`CP:3 -` + int(value*dpi) + ` -` + int(value*dpi) + ` ` + int(value*dpi) + ` ` + int(value*dpi)",size,vtMissing,vtMissing));
var_Appearance->Add(2,spTree1->FormatABC(L"`CP:4 -` + int(value*dpi) + ` -` + int(value*dpi) + ` ` + int(value*dpi) + ` ` + int(value*dpi)",size,vtMissing,vtMissing));
spTree1->PutLinesAtRoot(EXTREELib::exGroupLinesAtRoot);
spTree1->PutHasButtons(EXTREELib::exCustom);
spTree1->PutHasButtonsCustom(VARIANT_FALSE,16777216);
spTree1->PutHasButtonsCustom(VARIANT_TRUE,33554432);
spTree1->GetColumns()->Add(L"Column");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root 1");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->PutExpandItem(h,VARIANT_TRUE);
h = var_Items->AddItem("Root 2");
var_Items->InsertItem(h,vtMissing,"Child");
spTree1->EndUpdate();
|
707
|
Is it possible to highlight the column's header once a filter is applied (sample 1)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
EXTREELib::IAppearancePtr var_Appearance = spTree1->GetVisualAppearance();
var_Appearance->Add(2,_bstr_t("gBFLBCJwBAEHhEJAAEhABX8GACAADACAxSDEMQBQKAAzQFAYbhgHCGAAGQaBUgmFgAQhFcZQSKUOQTDKNYykCIRSDUJYkSZEIyjBI8ExXFqNACkGKwYgmNYiTLAcgAN") +
"J0WBaGIZJ4gOT5fDKMoEDRRYADFCscwxJybQAqGQKKb+VgAVY/cTyBIAEQSKA0TDOQ5TSKWB4JPZQRBEbZMNBtBIUJquKaqShdQJCU5FdY3Xblez9P7AMBwLFEC4NQ8Y" +
"NYuPhjR4dRTIMhvVAsUArFh8Zg9GZZFjmDIDT4ydBLTQwcyVIKnP5qOa6XbmPoCQDYKxZHYxPzVDa3axuL76dqCAT7XrXNy1TbNRrzQKfcJqfCbdw2YaDZLOOT3fjuI4" +
"hhKaRzFAHJ+jYQ4xHuY4gHuGIXGeExqC8Tp6C+PoEm+G5ImycRgh0XwvDGa5rgOeoejyXwnFeQp2mkf5ClgBB9gCWIYAwfYAEKV58mkdwOggNArgOXY2EWLoDkKOA0mg" +
"bhOGgZApgaSBIHWSYHSmbApgYThmESZYJkIeIkgeCpfliLIHgpMIcmUYYYmODAlg2SI4mWfRfGOEguDcCRjFYAJihCQhJBSDoRmONgKEcI4kFCEJhhOVYTmYnAlEAQhW" +
"BMJYJGYWoWmWSR2F6F5lnkWAQhUAgpEieRWEuSYkjWGpmkmNhuhuZwJkYcocmaaYkjyEhngnUA6lEFAlAEgI=");
var_Appearance->Add(1,"CP:2 -8 -4 2 4");
spTree1->PutBackground(EXTREELib::exHeaderFilterBarButton,0x1fefefe);
spTree1->PutBackground(EXTREELib::exHeaderFilterBarActive,0x1010101);
spTree1->PutBackground(EXTREELib::exCursorHoverColumn,-1);
spTree1->PutHeaderHeight(28);
spTree1->PutBackColorHeader(RGB(255,255,255));
spTree1->PutDrawGridLines(EXTREELib::exRowLines);
spTree1->PutHeaderVisible(VARIANT_TRUE);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
((EXTREELib::IColumnPtr)(var_Columns->Add(L"C1")))->PutDisplayFilterButton(VARIANT_TRUE);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(var_Columns->Add(L"C2")));
var_Column->PutDisplayFilterButton(VARIANT_TRUE);
var_Column->PutFilter(L"Item 2");
var_Column->PutFilterType(EXTREELib::exFilter);
((EXTREELib::IColumnPtr)(var_Columns->Add(L"C3")))->PutDisplayFilterButton(VARIANT_TRUE);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Item 1");
var_Items->PutCellCaption(h,long(1),"Item 2");
var_Items->PutCellCaption(h,long(2),"Item 3");
h = var_Items->AddItem("Item 4");
var_Items->PutCellCaption(h,long(1),"Item 5");
var_Items->PutCellCaption(h,long(2),"Item 6");
spTree1->ApplyFilter();
spTree1->EndUpdate();
|
706
|
Is it possible to show the filterbar on top of the rows

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutFilterBarPromptVisible(EXTREELib::exFilterBarTop);
spTree1->PutHeaderHeight(24);
spTree1->PutFilterBarHeight(spTree1->GetHeaderHeight());
spTree1->PutHeaderAppearance(EXTREELib::Flat);
spTree1->PutDrawGridLines(EXTREELib::exAllLines);
spTree1->PutGridLineStyle(EXTREELib::exGridLinesGeometric);
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Column")));
var_Column->PutDisplayFilterButton(VARIANT_TRUE);
var_Column->PutFilterType(EXTREELib::exPattern);
var_Column->PutFilter(L"B*");
EXTREELib::IColumnPtr var_Column1 = ((EXTREELib::IColumnPtr)(spTree1->GetColumns()->Add(L"Index")));
var_Column1->PutFormatColumn(L"1 index ``");
var_Column1->PutPosition(0);
var_Column1->PutWidth(48);
var_Column1->PutAllowSizing(VARIANT_FALSE);
var_Column1->PutSortType(EXTREELib::SortNumeric);
var_Column1->PutDef(EXTREELib::exCellHasCheckBox,VARIANT_TRUE);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("A.1");
var_Items->AddItem("A.2");
var_Items->AddItem("B.1");
var_Items->AddItem("B.2");
var_Items->AddItem("B.3");
var_Items->AddItem("C");
spTree1->ApplyFilter();
spTree1->EndUpdate();
|
705
|
DragDrop (with visual effect)

// OLEDragDrop event - Occurs when a source component is dropped onto a target component when the source component determines that a drop can occur.
void OnOLEDragDropTree1(LPDISPATCH Data, long FAR* Effect, short Button, short Shift, long X, long Y)
{
// SelectItem(InsertItem(i,, Data.GetData(1))) = True
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
long i = spTree1->GetItemFromPoint(-1,-1,c,hit);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->PutExpandItem(i,VARIANT_TRUE);
}
// OLEStartDrag event - Occurs when the OLEDrag method is called.
void OnOLEStartDragTree1(LPDISPATCH Data, long FAR* AllowedEffects)
{
// Data.SetData(Me.Items.CellCaption(FocusItem, 0), 1)
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
AllowedEffects = 1;
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->GetVisualAppearance()->Add(1,_bstr_t("gBFLBCJwBAEHhEJAAEhABPUIQAAYAQGKIcBiAKBQAGaAoDgYN4MAANAwjJBMKgBBCLIxhEYobgmGIaRjEEQDCKYcxHCaIBiGcaIfDEBIeSBHcgRbAcOQHGSZZBhGRJG") +
"juKIbSrLICzBDUcRnGwAKQoaaaEomHwyAZOYwDAIoWhpKKCKjqWJKNb+XgAAJTES0RRVRTNAZ1YghGAQgIA==");
spTree1->PutBackground(EXTREELib::exListOLEDropPosition,0x1000000);
spTree1->PutBackground(EXTREELib::exDragDropBefore,RGB(0,0,0));
spTree1->PutBackground(EXTREELib::exDragDropAfter,RGB(255,255,255));
spTree1->PutOLEDropMode(EXTREELib::exOLEDropManual);
spTree1->PutAutoDrag(EXTREELib::exAutoDragPositionAnyOnRight);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
spTree1->PutIndent(16);
spTree1->PutSelBackMode(EXTREELib::exTransparent);
spTree1->GetColumns()->Add(L"Default");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->PutExpandItem(h,VARIANT_TRUE);
OutputDebugStringW( L"You can:" );
OutputDebugStringW( L"A) left-click to drag and drop items between controls (open a new exhelper and run the same sample)" );
OutputDebugStringW( L"B) right-click to re-arrange the item position inside the same control" );
OutputDebugStringW( L"This sample shows how you can insert the data being dropped as a child of the item being hovered." );
|
704
|
DragDrop (with no visual effect, hide item while drag and drop)

// OLEDragDrop event - Occurs when a source component is dropped onto a target component when the source component determines that a drop can occur.
void OnOLEDragDropTree1(LPDISPATCH Data, long FAR* Effect, short Button, short Shift, long X, long Y)
{
// SelectItem(InsertItem(i,, Data.GetData(1))) = True
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
long i = spTree1->GetItemFromPoint(-1,-1,c,hit);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->PutExpandItem(i,VARIANT_TRUE);
}
// OLEStartDrag event - Occurs when the OLEDrag method is called.
void OnOLEStartDragTree1(LPDISPATCH Data, long FAR* AllowedEffects)
{
// Data.SetData(Me.Items.CellCaption(FocusItem, 0), 1)
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
AllowedEffects = 1;
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->PutBackground(EXTREELib::exDragDropBefore,RGB(0,0,0));
spTree1->PutBackground(EXTREELib::exDragDropAfter,RGB(255,255,255));
spTree1->PutOLEDropMode(EXTREELib::exOLEDropManual);
spTree1->PutAutoDrag(EXTREELib::exAutoDragPositionAnyOnRight);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
spTree1->PutIndent(16);
spTree1->PutSelBackMode(EXTREELib::exTransparent);
spTree1->GetColumns()->Add(L"Default");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->PutExpandItem(h,VARIANT_TRUE);
OutputDebugStringW( L"You can:" );
OutputDebugStringW( L"A) left-click to drag and drop items between controls (open a new exhelper and run the same sample)" );
OutputDebugStringW( L"B) right-click to re-arrange the item position inside the same control" );
OutputDebugStringW( L"This sample shows how you can insert the data being dropped as a child of the item being hovered." );
|
703
|
DragDrop

// OLEDragDrop event - Occurs when a source component is dropped onto a target component when the source component determines that a drop can occur.
void OnOLEDragDropTree1(LPDISPATCH Data, long FAR* Effect, short Button, short Shift, long X, long Y)
{
// SelectItem(InsertItem(i,, Data.GetData(1))) = True
/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
long i = spTree1->GetItemFromPoint(-1,-1,c,hit);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->PutExpandItem(i,VARIANT_TRUE);
}
// OLEStartDrag event - Occurs when the OLEDrag method is called.
void OnOLEStartDragTree1(LPDISPATCH Data, long FAR* AllowedEffects)
{
// Data.SetData(Me.Items.CellCaption(FocusItem, 0), 1)
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
AllowedEffects = 1;
}
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->PutOLEDropMode(EXTREELib::exOLEDropManual);
spTree1->PutAutoDrag(EXTREELib::exAutoDragPositionAnyOnRight);
spTree1->PutLinesAtRoot(EXTREELib::exLinesAtRoot);
spTree1->PutIndent(16);
spTree1->PutSelBackMode(EXTREELib::exTransparent);
spTree1->GetColumns()->Add(L"Default");
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
long h = var_Items->AddItem("Root");
var_Items->InsertItem(h,vtMissing,"Child 1");
var_Items->InsertItem(h,vtMissing,"Child 2");
var_Items->PutExpandItem(h,VARIANT_TRUE);
OutputDebugStringW( L"You can:" );
OutputDebugStringW( L"A) left-click to drag and drop items between controls (open a new exhelper and run the same sample)" );
OutputDebugStringW( L"B) right-click to re-arrange the item position inside the same control" );
OutputDebugStringW( L"This sample shows how you can insert the data being dropped as a child of the item being hovered." );
|
702
|
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header (non-clickable)

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
var_Columns->Add(L"Item");
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(var_Columns->Add(L"Pos")));
var_Column->PutPosition(0);
var_Column->PutWidth(32);
var_Column->PutAllowSizing(VARIANT_FALSE);
var_Column->PutFormatColumn(L"1 index ``");
var_Column->PutAllowSort(VARIANT_FALSE);
var_Column->PutAllowDragging(VARIANT_FALSE);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("Item A");
var_Items->AddItem("Item B");
var_Items->AddItem("Item C");
spTree1->EndUpdate();
|
701
|
Is there anyway to stop the header changing colour when the mouse hovers/moves across the column header

/*
Copy and paste the following directives to your header file as
it defines the namespace 'EXTREELib' for the library: 'ExTree 1.0 Control Library'
#import <ExTree.dll>
using namespace EXTREELib;
*/
EXTREELib::ITreePtr spTree1 = GetDlgItem(IDC_TREE1)->GetControlUnknown();
spTree1->BeginUpdate();
spTree1->PutHeaderAppearance(EXTREELib::Etched);
spTree1->PutBackground(EXTREELib::exCursorHoverColumn,-1);
EXTREELib::IColumnsPtr var_Columns = spTree1->GetColumns();
var_Columns->Add(L"Item");
EXTREELib::IColumnPtr var_Column = ((EXTREELib::IColumnPtr)(var_Columns->Add(L"Pos")));
var_Column->PutPosition(0);
var_Column->PutWidth(32);
var_Column->PutAllowSizing(VARIANT_FALSE);
var_Column->PutFormatColumn(L"1 index ``");
var_Column->PutAllowSort(VARIANT_FALSE);
var_Column->PutAllowDragging(VARIANT_FALSE);
EXTREELib::IItemsPtr var_Items = spTree1->GetItems();
var_Items->AddItem("Item A");
var_Items->AddItem("Item B");
var_Items->AddItem("Item C");
spTree1->EndUpdate();
|