Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

PageControl   Найти похожие ветки 

 
SashaNevid   (2004-05-10 09:08) [0]

Подскажите, можно ли сделать так и как это сделать:

Использую PageControl, на нём несколько страниц (TabSheet). Я хочу, чтобы при запуске была активизирована только первая страница, все другие были видны, но ни одну из них нельзя было бы активизировать, то есть расположить поверх остальных.

Свойство enabled для tabsheet не подходит, оно только не даёт работать с компонентами, которые располагаются на странице.


 
Sergey Masloff   (2004-05-10 09:17) [1]

procedure TForm1.PageControl1Changing(Sender: TObject;
 var AllowChange: Boolean);

Пояснения нужны?


 
SashaNevid   (2004-05-10 13:29) [2]

Да.Очень прошу.


 
KilkennyCat ©   (2004-05-10 13:32) [3]

AllowChange := false;


 
Mim1 ©   (2004-05-10 13:37) [4]

ROTFL


 
SashaNevid   (2004-05-10 17:08) [5]

Я понимаю, что из-за моих вопросов некоторые могут по полу пыль собирать, но...

Ну сделал я следующее:

procedure TForm1.PageControl1Changing(Sender: TObject;
 var AllowChange: Boolean);
begin
AllowChange := false;
end;

Да, получилось. Теперь нельзя переключать. Круто!!! А как мне сделать так, чтобы при нажатии на кнопку, переключать стало можно? Я пытался, но не получается. Опыта мало...

Например, пишу

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
TForm1.PageControl1Changing(true);
end;

Выводит ошибку.
Пожалуйста, напишите как правильно.


 
Плохиш   (2004-05-10 17:18) [6]


> procedure TForm1.PageControl1Changing(Sender: TObject;
>  var AllowChange: Boolean);
> begin

 if кнопканажата then AllowChange := true
 else

> AllowChange := false;
> end;


 
Mim1 ©   (2004-05-10 17:20) [7]

[5] SashaNevid   (10.05.04 17:08)


> Например, пишу
>
> procedure TForm1.BitBtn1Click(Sender: TObject);
> begin
> TForm1.PageControl1Changing(true);
> end;


Такое делать точно бессмыслено :)
После коментария помогать не хочется, пойду еще пыль пособираю.


 
Erik ©   (2004-05-10 17:21) [8]

Даже проще
AllowChange := кнопканажата;


 
Яичница ©   (2004-05-10 17:21) [9]

Можно попробовать так:


implementation
{$R *.dfm}
var _AllowChange:boolean=false;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
_AllowChange:=not _AllowChange;
end;

procedure TForm1.PageControl1Changing(Sender: TObject;
 var AllowChange: Boolean);
begin
AllowChange := _AllowChange;
end;


 
KilkennyCat ©   (2004-05-10 17:22) [10]

Э нет, так нельзя. Во-первых, Вы даже параметры не все передали, а во-вторых - PageControl1Changing - это событие, Вы должны его обрабатывать, а не вызывать. Хотя, можно, конечно... но некрасиво.
....
public
  MognoIliNet : boolean;
...

procedure TForm1.PageControl1Changing(Sender: TObject;
 var AllowChange: Boolean);
begin
 AllowChange := MognoIliNet;
end;
теперь спокойно меняете значение MognoIliNet на True\False когда надо и где надо.

например:

procedure TForm1.Button1Click(Sender: TObject);
begin
 MognoIliNet := true;
end;



Страницы: 1 вся ветка

Текущий архив: 2004.05.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.047 c
3-1082960606
Forget
2004-04-26 10:23
2004.05.23
Объединение и модификация таблиц Paradox


6-1080761966
dreams
2004-03-31 23:39
2004.05.23
Отследить загрузку файла в WebBrouser


8-1078386440
Димон
2004-03-04 10:47
2004.05.23
Сохранение в Image


11-1072439850
Bmouradov
2003-12-26 14:57
2004.05.23
Табуляция в МСК


14-1083470203
Думкин
2004-05-02 07:56
2004.05.23
С днем рождения! 2 мая.