Форум: "Основная";
Текущий архив: 2002.06.03;
Скачать: [xml.tar.bz2];
ВнизКак сделать дерево выбора каталога с CheckBox`ами? Найти похожие ветки
← →
MegaVolt (2002-05-16 13:18) [0]Например такое как сделано в нортоновских утилитах для UnErase?
← →
Song (2002-05-16 13:19) [1]Засунуть TCheckBox в TTreeView
← →
Krok (2002-05-16 13:50) [2]Перекрываешь событие TTreeView.OnClick :
const
ICON_NONE = 0;
ICON_YES= 1;
{....}
procedure TFormCommon.TreeGroupClick(Sender: TObject);
var
Good : boolean;
X_,Y_: integer;
Node,RootNode : TTreeNode;
MousePos: TPoint;
begin
GetCursorPos(MousePos);
with PointToSmallPoint(TreeGroup.ScreenToClient(MousePos)) do
begin
X_ := X;
Y_ := Y;
end;
Node := TreeGroup.GetNodeAt(X_, Y_);
if (Node<>nil) and
(htOnIcon in TreeGroup.GetHitTestInfoAt(X_,Y_)) then
begin
if (Node.ImageIndex=ICON_NONE) then
Node.ImageIndex=ICON_YES
else
Node.ImageIndex=ICON_NONE
end;
В ImageList соответствующие картинки(под номером 0 - без галочки, 1- с галочкой)
← →
Дмитрий Баранов (2002-05-16 14:08) [3]procedure TForm1.FormCreate(Sender: TObject);
var style: DWORD;
const TVS_CHECKBOXES = $0100;
begin
style := GetWindowLong(TreeView1.Handle, GWL_STYLE);
style := style or TVS_CHECKBOXES;
SetWindowLong(TreeView1.Handle, GWL_STYLE, style);
end;
← →
MegaVolt (2002-05-16 14:53) [4]Но последнее предложение делает TreeView с CheckBox`ами а заполнять мне придётся самому :( Но например в тех же нортоновских утилитах это сделано черезвычайно похоже на стандартный выбор каталога. Может есть какиенибудь виндяшные стандартные способы типа флага у стандартного диалога выбора каталога?
← →
MegaVolt (2002-05-16 17:54) [5]Ни кто не знает?
← →
Дмитрий Баранов (2002-05-16 18:00) [6]Если ты имеешь в виду тот диалог, который возникает при вызове ф. SHBrowseForFolders, то иначе как полухакерскими методами туда чекбоксы не засунешь, а если и получится, то получать информацию будет шибко сложно.
Выходы
1) Взять 6 делфи, там есть дерево каталогов a la Explorer, извратиться над его стилем, сделать свой диалог (сымитировать стандартный)
2) Скачать откуда-нить компонент FolderTree - сделать то же самое
3) ... или написать самому.
← →
MBo (2002-05-16 18:13) [7]Я не видел NU. Чем не устраивают приведенные подходы и чего конкретно надо добиться?
← →
MegaVolt (2002-05-20 10:44) [8]MBo:
я хочу иметь возможность выбора директорий в дереве. Т.е. указать верхнюю папку и все нижние мне не подходит нужно указывать те папки которые я захочу например как это сделано в КАV 4...
← →
MegaVolt (2002-05-20 17:26) [9]При том со стандартными картинками т.е. Мой компьютенр и пр. Как такие картинки доставать из винды?
← →
Игорь Шевченко (2002-05-20 17:39) [10]Все стандартные картинки находятся в файле Shell32.dll
С уважением,
← →
MegaVolt (2002-05-21 10:15) [11]А как к ним обращатся? Емсли не сложно с примером
← →
MegaVolt (2002-05-21 10:15) [12]А как к ним обращатся? Если не сложно с примером
← →
MegaVolt (2002-05-21 14:23) [13]Кто знает как извлекать картинки откликнитесь :)
← →
Игорь Шевченко (2002-05-21 14:35) [14]LoadBitmap, обычно...
Есть еще такое понятие, как System ImageList - тоже в Shell32.dll
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.03;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c