/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Form i front ?
Fra : Michael Reiler


Dato : 19-02-05 20:40

Hej

Jeg har en nød jeg ikke kan knække:

I et flerbrugerprogram, er der et grid, der skal opdateres hvis en anden
bruger har foretaget ændringer på en anden maskine, derfor checker jeg hvert
minut om der er sket ændringer.
Mit problem er at der kun skal opdateres hvis hovedformen er den aktive
form, d.v.s. at hvis brugeren er i et andet vindue, skal der ikke opdateres.

Hvordan checker jeg at min hovedform er den aktive form, Form.Active er ikke
true hvis programmet ikke er det aktive ?

Der skal altså osse opdateres hvis mit program er i baggrunden, men kun hvis
det er hovedvinduet der er det aktive.

Michael



 
 
Nicolai Hansen (21-02-2005)
Kommentar
Fra : Nicolai Hansen


Dato : 21-02-05 13:34

"Michael Reiler" <Michael@reil_remove_er.dk> wrote in message news:<42179622$0$290$edfadb0f@dread12.news.tele.dk>...
> Hej
>
> Jeg har en nød jeg ikke kan knække:
>
> I et flerbrugerprogram, er der et grid, der skal opdateres hvis en anden
> bruger har foretaget ændringer på en anden maskine, derfor checker jeg hvert
> minut om der er sket ændringer.
> Mit problem er at der kun skal opdateres hvis hovedformen er den aktive
> form, d.v.s. at hvis brugeren er i et andet vindue, skal der ikke opdateres.
>
> Hvordan checker jeg at min hovedform er den aktive form, Form.Active er ikke
> true hvis programmet ikke er det aktive ?
>
> Der skal altså osse opdateres hvis mit program er i baggrunden, men kun hvis
> det er hovedvinduet der er det aktive.
>
> Michael

Kan du bruge OnFormActivate og OnFormDeactivate til at sætte/slette et
flag (booleansk) om der skal opdateres? Ku være en ret simpel
løsning...

Michael Reiler (21-02-2005)
Kommentar
Fra : Michael Reiler


Dato : 21-02-05 19:35

Tak for svaret.

Det var en nærliggende løsning, men de events bliver desværre ikke trigget
når man åbner andre forme med Showmodal, kun hvis man bruge rShow.....

Michael

"Nicolai Hansen" <nic@aub.dk> skrev i en meddelelse
news:d96764ff.0502210434.629c4e28@posting.google.com...
> "Michael Reiler" <Michael@reil_remove_er.dk> wrote in message
> news:<42179622$0$290$edfadb0f@dread12.news.tele.dk>...
>> Hej
>>
>> Jeg har en nød jeg ikke kan knække:
>>
>> I et flerbrugerprogram, er der et grid, der skal opdateres hvis en anden
>> bruger har foretaget ændringer på en anden maskine, derfor checker jeg
>> hvert
>> minut om der er sket ændringer.
>> Mit problem er at der kun skal opdateres hvis hovedformen er den aktive
>> form, d.v.s. at hvis brugeren er i et andet vindue, skal der ikke
>> opdateres.
>>
>> Hvordan checker jeg at min hovedform er den aktive form, Form.Active er
>> ikke
>> true hvis programmet ikke er det aktive ?
>>
>> Der skal altså osse opdateres hvis mit program er i baggrunden, men kun
>> hvis
>> det er hovedvinduet der er det aktive.
>>
>> Michael
>
> Kan du bruge OnFormActivate og OnFormDeactivate til at sætte/slette et
> flag (booleansk) om der skal opdateres? Ku være en ret simpel
> løsning...



Nicolai Hansen (22-02-2005)
Kommentar
Fra : Nicolai Hansen


Dato : 22-02-05 08:23

Hej Micahel,

Du kan bruge TForm.Active i dine timers så

procedure TForm1.Timer1Tick(Sender: TObject);
begin
if Active then
LavNoget;
end;

så kører det kun hvis formen har focus.


> Tak for svaret.
>
> Det var en nærliggende løsning, men de events bliver desværre ikke trigget
> når man åbner andre forme med Showmodal, kun hvis man bruge rShow.....
>
> Michael

> > Kan du bruge OnFormActivate og OnFormDeactivate til at sætte/slette et
> > flag (booleansk) om der skal opdateres? Ku være en ret simpel
> > løsning...

Harald (21-02-2005)
Kommentar
Fra : Harald


Dato : 21-02-05 21:57

"Michael Reiler" <Michael@reil_remove_er.dk> skrev i en meddelelse
news:42179622$0$290$edfadb0f@dread12.news.tele.dk...
> Hej
>
> Jeg har en nød jeg ikke kan knække:
>
> I et flerbrugerprogram, er der et grid, der skal opdateres hvis en anden
> bruger har foretaget ændringer på en anden maskine, derfor checker jeg
> hvert minut om der er sket ændringer.
> Mit problem er at der kun skal opdateres hvis hovedformen er den aktive
> form, d.v.s. at hvis brugeren er i et andet vindue, skal der ikke
> opdateres.
>
> Hvordan checker jeg at min hovedform er den aktive form, Form.Active er
> ikke true hvis programmet ikke er det aktive ?
>
> Der skal altså osse opdateres hvis mit program er i baggrunden, men kun
> hvis det er hovedvinduet der er det aktive.

Hvis du bruger Modal til alle vinduer kan du evt. bruger
Application.Components til at løbe alle vinduer igennem og se om nogle andre
end hovedformen er synlig.

/HK



Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31962
Nyheder : 719565
Indlæg : 6408173
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste