Главная страница
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
6-1080884762
vasil
2004-04-02 09:46
2004.05.23
Использование Компонента WebBrowser


1-1083749914
Alkmas
2004-05-05 13:38
2004.05.23
Создание TButton из DLL


1-1084333644
WinLamka
2004-05-12 07:47
2004.05.23
Динамическая структура.


14-1082719463
VictorT
2004-04-23 15:24
2004.05.23
Ещё задачка к пятнице... мы пока к решению не пришли...


8-1078899700
Алексей
2004-03-10 09:21
2004.05.23
Вывод на второй экран