Главная страница
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.052 c
11-1070349986
Officeman
2003-12-02 10:26
2004.05.23
FTP на KOL


14-1083733782
Dmitriy O.
2004-05-05 09:09
2004.05.23
Старость нужно уважать ? Или наоборот ?


7-1081601554
Rustamonline1
2004-04-10 16:52
2004.05.23
Создание массивных процедур


3-1083093062
Realist
2004-04-27 23:11
2004.05.23
<<< Общение между двумя БД в реальном времени >>>


7-1081605190
Ivolg
2004-04-10 17:53
2004.05.23
Мой компьютер