![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
case + pagecontrol, ordinal type required
Тимоха111 © (2010-12-27 16:52:00)есть pagecontrol, и несколько вкладок к нему, оператором case хочу сделать простое условие
case PageControl1.ActivePage of
tsWelcome:
lbl1.caption := 'welcome';
tsStep1:
lbl1.caption := 'step1';
end;
Компилятор ругается мол, тип должен быть не такой.
case PageControl1.ActivePageIndex of
0:
..
1:
такая конструкция меня не устраивает, хочу обращаться непосредственно к табу, не зная индекса
Как решить?
Leonid Troyanovsky (2010-12-27 23:08:00) [1]
> RWolf © (27.12.10 17:15) [7]
> Можно присвоить каждой странице своё значение свойства Tag,
> и подставить это свойство в case.
Здесь чувство изменяет прекрасному.
--
Regards, LVT.
RWolf (2010-12-27 17:15:00) [2]
> Anatoly Podgoretsky © (27.12.10 17:04) [5]
это не лень, а чувство прекрасного.
> Тимоха111 (27.12.10 16:54) [2]
Можно присвоить каждой странице своё значение свойства Tag, и подставить это свойство в case.
Дмитрий С (2010-12-27 17:14:00) [3]PageControl1.ActivePageIndex
но лучше через иф
Anatoly Podgoretsky (2010-12-27 17:04:00) [4]> Тимоха111 (27.12.2010 16:54:02) [2]
Ленивым нет места в программирование.
Сергей М. (2010-12-27 16:59:00) [5]
> Тимоха111
Варианты выбора, фигурирующие в case-блоке, должны иметь ordinal-тип и быть известными уже на этапе компиляции.
Тимоха111 (2010-12-27 16:55:00) [6]Palladin, без if никак?
Тимоха111 (2010-12-27 16:54:00) [7]можно сделать и так
if PageControl1.ActivePage = tsWelcome then
begin
...
end;
if PageControl1.ActivePage = tsStep1 then
begin
...
end;
Но хотелось бы через case, так менее громозко :)
Palladin (2010-12-27 16:53:00) [8]if