Avatar billede frederikschack Nybegynder
17. august 2010 - 12:50 Der er 7 kommentarer og
1 løsning

Faneblad events

Hej,

Jeg har et tilsyneladende ofte forekommende Access problem, som jeg ikke kan finde en fungerende løsning til.

Det drejer sig om at de "tab events" der skulle aktiveres, ikke bliver aktiveret, når man klikker på et faneblad.

Jeg har et faneblad "Fl" og når jeg højreklikker på det og vælger Generer hændelsesprocedure -> Kodegenerator, så får jeg følgende:

Private Sub Fl_Click()

End Sub

Men hvis jeg laver en:

Private Sub Fl_Click()
  MsgBox("test")
End Sub

Så kan jeg konstatere at denne aldrig bliver aktiveret, uanset hvordan og hvor jeg klikker.
Avatar billede Ialocin Novice
17. august 2010 - 13:29 #1
Hej frederikschack

Koden skal ligge bag selve "Tab controllen" = faneblads objektet, i stedet for bag den enkelte faneblad.


Jeg har en applikation, hvor jeg bruger følgende hændelse.
Når der klikkes på et faneblad, aktiveres Change_hændelsen på faneblads objektet, som så via en IF struktur, spø´r på, hvilket faneblad aktiverede hændelse (hvilket faneblad der er aktiv!)


Private Sub tabFaneblade_Change()


    'hvis FI fanebladet er aktiv
    If Me.tabFaneblade.Value = 1 Then

      .......


    If Me.tabFaneblade.Value = 2 then

      .........

    End if


Mvh Nicolai
Avatar billede frederikschack Nybegynder
17. august 2010 - 13:35 #2
Hej Lalocin,

Jo, det har jeg også set andre steder og man kan evt. bruge en case istedet for if.

Men jeg kan ikke finde ud af hvilken hændelse der bliver aktiveret og hvad den måtte hedde? Der er ikke noget kontrolelement der hedder tabEtEllerAndet hos mig? Og Fl bliver slet ikke aktiveret.

M.v.h.
Frederik
Avatar billede Ialocin Novice
17. august 2010 - 14:19 #3
Hej Frederik

TabEtEllerAndet er noget jeg har døbt det for min egen skyld.


Jeg har nu oprettet en Faneblad.mdb for eksemplets skyld.

I databasen er der en formular, hvorpå jeg har trukket en fanebladskontrol ind, fra værktøjskassen i Access Design Mode.

Jeg har højre klikket på kontrollen, MEN ved siden af de 2 obligatoriske faneblade ... og under EVENT fanen, valgt CHANGE hændelsen.

Jeg har ikke omdøbt kontrollen, så den er her med sit standardnavn.

Koden er følgende:


Private Sub TabCtl0_Change()
Dim v As Integer

v = Me.TabCtl0.Value

    Select Case v
   
        Case 0
   
            MsgBox "Faneblad, Page 1 er aktiveret"
       
       
        Case 1
       
       
            MsgBox "Faneblad, Page 2 er aktiveret"
           
    End Select


End Sub





Jeg kan evt. maile dig et visuelt eksempel ?


Mvh Nicolai
Avatar billede Slettet bruger
17. august 2010 - 14:21 #4
Jeg har et eksempel, du måske kan bruge, liggende på www.parodux.com under gratis!~)
Avatar billede Ialocin Novice
17. august 2010 - 14:22 #5
Argh !!!

Glemte ....

Når jeg har højre klikket på kontrollen ved siden af fanerne ... så vælger jeg først "Properties" og så derefter EVENt fanebladet, sorry :o)


Mvh Nicolai
Avatar billede frederikschack Nybegynder
17. august 2010 - 14:24 #6
Smukt! Det virker :) Smid et svar.
Avatar billede Ialocin Novice
17. august 2010 - 14:40 #7
Hej Frederik

Regner med, at det er mig der skal lægge et svar ?


"Svar"


Mvh Nicolai :o)
Avatar billede Ialocin Novice
17. august 2010 - 14:43 #8
Det kører sgu godt i dag .... !!!


Her er et "svar"



Mvh Nicolai
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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