Avatar billede tschmidt Nybegynder
10. juli 2000 - 14:11 Der er 7 kommentarer og
1 løsning

Caption inaktiv i pagecontrol/tabsheet

Formentlig et let spm....

Jeg har en pagecontrol med et antal tabsheets på. Ved den første ændring i data på én af tabsheet'ene skal der lukkes for mulighed for at skifte tabsheet og caption på sheetene skal være "inaktiv"

Nogen idéer
Avatar billede sjensen Nybegynder
10. juli 2000 - 14:38 #1
Det du vil kan du ikke med en pagecontrol:

Du kan ikke disable (enabled := false;) en side (d.v.s. at du godt kan fortælle delphi at du vil, men det virker bare ikke) og dermed bliver caption heller ikke grå.

Der er 2 løsninger:

1. Free alle andre sider når en side røres. Dermed vises kan du side der er rettet på. Problemet med denne løsning er at du ikke kan skabe siderne igen, uden og så at skulle skabe alle de felter de indeholder. Det letteste vil være at free formen og create den igen.

2. I PageControl.OnChange checker du på hvilken side der er rettet og sætter derefter pagecontrol.activepage := tabsheetx; hvor x er sidenummeret p^å den side du har rettet. Dermed vil alle tryk på andre faneblade bare vise den samme side igen.
Avatar billede sjensen Nybegynder
10. juli 2000 - 14:40 #2
rettelser:

.. vises kan du side.. = vises kun den side... 

og så = også

P^å = på

Avatar billede hatecaps Nybegynder
10. juli 2000 - 19:33 #3
hmm, gu' ved hvornår sjensen lærer at stave ;-)
Avatar billede sjensen Nybegynder
10. juli 2000 - 22:18 #4
Når hans medarbejdere laver nok til at han kan råd til et stavekursus ;-)
Avatar billede hatecaps Nybegynder
11. juli 2000 - 09:06 #5
"han kan råd"  ?!?!  hmm, det er vist ikke nok med ét stavekursus ;-)
Avatar billede blackthorne Nybegynder
12. juli 2000 - 15:17 #6
Lidt fra Delphi hjælpen, du kan bare benytte onChanging og sætte allowchange til false hvis det ikke skal være muligt

Occurs immediately before a new tab is selected.

type TTabChangingEvent = procedure (Sender: TObject; var AllowChange: Boolean) of object;
property OnChanging: TTabChangingEvent;

Description

Write an OnChanging event handler to take specific action immediately before the selected tab changes. Set the AllowChange parameter to False to prevent the change.

Use an OnChanging event handler to prevent the user from leaving a tab setting until certain conditions have been met. An OnChanging event handler can also be used to save information about the current state of the tab control before it is changed by a new tab selection.
Avatar billede tschmidt Nybegynder
12. juli 2000 - 16:00 #7
Hej Blackthorne

Den ene halvdel af problemet er løst med dig forslag. Hvad med at få tab'ben til at blive grå. Kan du også løse det?

tschmidt
Avatar billede blackthorne Nybegynder
13. juli 2000 - 09:10 #8
Det tror jeg ikke, Ihvertfald ikke uden at lave en ny komponent der er nedarvet fra TPagecontrol, så man kan override paint funtionen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester