Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

TreeView

2.2K
28 марта 2005 года
micle77
50 / / 14.01.2005
Подскажите пожалуйста как определить какую из дочерних веток я выделил?
259
28 марта 2005 года
AlexandrVSmirno
1.4K / / 03.12.2004
Цитата:
Originally posted by micle77
Подскажите пожалуйста как определить какую из дочерних веток я выделил?


Есть свойство Selected. Оно указывает на выделенный узел.

 
Код:
TTreeNode *SelNode = TTreeView1->Selected; //выделенный узел
TTreeNode *ParentNode = SelNode->Parent; //его ветка
2.2K
28 марта 2005 года
micle77
50 / / 14.01.2005
Цитата:
Originally posted by AlexandrVSmirno
Есть свойство Selected. Оно указывает на выделенный узел.
 
Код:
TTreeNode *SelNode = TTreeView1->Selected; //выделенный узел
TTreeNode *ParentNode = SelNode->Parent; //его ветка



Можно пример, если не затруднит, мне нужно узнать выделена ли в Node дочерняя ветка и если да, то какая?

259
28 марта 2005 года
AlexandrVSmirno
1.4K / / 03.12.2004
Цитата:
Originally posted by micle77
Можно пример, если не затруднит, мне нужно узнать выделена ли в Node дочерняя ветка и если да, то какая?


Можно, но позже. Скажем к вечеру.

2.2K
28 марта 2005 года
micle77
50 / / 14.01.2005
Цитата:
Originally posted by AlexandrVSmirno
Можно, но позже. Скажем к вечеру.


Буду очень признателен

7.2K
28 марта 2005 года
Mongoose
32 / / 23.09.2004
Цитата:
Originally posted by micle77
Можно пример, если не затруднит, мне нужно узнать выделена ли в Node дочерняя ветка и если да, то какая?

 
Код:
if(TreeView1->Selected->Parent==Node)
{
  // дочерная ветка выделена
}
предполагается, что Node имеет тип TTreeNode*.

В Borland-овском TreeView может быть выделена, только одна ветка. Определяется через TreeView1->Selected
259
28 марта 2005 года
AlexandrVSmirno
1.4K / / 03.12.2004
Цитата:
Originally posted by micle77
Буду очень признателен


Выдалась свободная минутка. Вот пример:

Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::TreeView1Click(TObject *Sender)
{
    TTreeNode* SelNode;
    if(TreeView1->Selected->HasChildren)
    {
        if(TreeView1->HasParent())
        {
            SelNode = TreeView1->Selected;
            Label1->Caption = "Select Node: "+SelNode->Text;
        }
        else
        {
            SelNode = TreeView1->Selected;
            Label1->Caption = "Select Root: "+SelNode->Text;
        }
    }
    else
    {
        if(TreeView1->HasParent())
        {
            SelNode = TreeView1->Selected->Parent;
            Label1->Caption = "Select Node: "+SelNode->Text;
        }
        else
        {
            SelNode = TreeView1->Selected;
            Label1->Caption = "Select Root: "+SelNode->Text;
        }
    }

}
//---------------------------------------------------------------------------


Но для multiselect этто не катит.
2.2K
28 марта 2005 года
micle77
50 / / 14.01.2005
Большое спасибо!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог