Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Выбор в TCheckListBox-е выбранных строк [D5, 2000]


worldmen ©   (2006-02-09 16:57:00) 

Как выбрать в TCheckListBox-е только выделенные строки.
Или это можно только просматривая весь список?


worldmen   (2006-02-09 19:30:00) [1]

Ладно, дома попробую на D7.


Джо   (2006-02-09 19:19:00) [2]

Черт его знает, что там в D5, может он там и в protected сидит у предка, не имею возможности проверить. Но ничто не мешает проверить тебе самому.


umbra   (2006-02-09 19:18:00) [3]

у меня, как ни странно, ошибочки нет.  текст ниже


> Но ни разу не изменял приватные св-ва

вовсе оно и публичное, правда делфи у меня 7-й

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, CheckLst;

type
 TForm1 = class(TForm)
   CheckListBox1: TCheckListBox;
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
 CheckListBox1.MultiSelect := true;
end;

end.


worldmen   (2006-02-09 19:09:00) [4]

Ошибочку выводит на эту строку (Undeclared identifer:Multiselect ):
CheckListBox1.Multiselect := true;

P.S.: Событиями я умею пользоваться. Но ни разу не изменял приватные св-ва.


umbra   (2006-02-09 19:02:00) [5]

в инспекторе объектов выбираете форму,  идете на закладку Events, клацаете два раза возле надписи OnCreate, появляется заготовка процедуры в редакторе. В этой заготовке пишете

CheckListBox1.Multiselect := true;

P.S. И Вам срочно надо прочесть что-нибудь об основах программирования в Делфи и об объектно-ориентированном программировании (ООП), напрмер, в справке по Делфи


worldmen   (2006-02-09 18:50:00) [6]

Честно, не понимаю как это сделать. Раньше такого не делал.   ????


Gero   (2006-02-09 18:36:00) [7]

> worldmen ©   (09.02.06 18:32)

В данном случае без разницы.


worldmen   (2006-02-09 18:32:00) [8]

А что, без разницы в каком OnCreateделать?


Gero   (2006-02-09 18:21:00) [9]

> Чето нету обработчика OnCreate в событиях CheckListBox1

Зато у TForm есть.


worldmen   (2006-02-09 18:17:00) [10]

Чето нету обработчика OnCreateв событиях CheckListBox1.


umbra   (2006-02-09 18:04:00) [11]

2 worldmen

в общем, его надо устанавливать, например, в обработчике OnCreateформы, на которой находится CheckListBox1


umbra   (2006-02-09 17:56:00) [12]

2 Джо ©   (09.02.06 17:50) [6]

оно находится в секции publicпредка TCustomListBox


Джо   (2006-02-09 17:53:00) [13]

> [6] Джо ©   (09.02.06 17:50)

Ошибся. Оно просто отсутствует в published, т.е., недоступно в дизайнере, но зато доступно в ран-тайм.


worldmen   (2006-02-09 17:52:00) [14]

Понятно


Джо   (2006-02-09 17:50:00) [15]

> [4] worldmen ©   (09.02.06 17:43)
> А где находится это св-во?
> Не в CheckListBox1.Items.MultiSelect не CheckListBox1.MultiSelect
> его нет.

Оно находится в секции private, наследуется от TCustomListBox. Следовательно, в CheckListBox оно всегда будет False, в отличие от TListBox, в котором оно вынесено в published.


umbra   (2006-02-09 17:48:00) [16]

в CheckListBox1


worldmen   (2006-02-09 17:43:00) [17]

А где находится это св-во?
Не в CheckListBox1.Items.MultiSelect не CheckListBox1.MultiSelect его нет.


Джо   (2006-02-09 17:36:00) [18]

When the MultiSelect property is False, SelCount is always –1.


worldmen   (2006-02-09 17:34:00) [19]

Еще вопрос.
Свойство CheckListBox1.SelCount -  указывает число выбранных элементов.
Но почемуто всегда оно равно -1 (минус единице). Почему? Или это св-во не работает.


Gero   (2006-02-09 16:58:00) [20]

> Или это можно только просматривая весь список?

Да.


Наверх

Титульная страница Поиск, карта сайта Написать письмо