Avatar billede hynne Nybegynder
29. august 2001 - 16:04 Der er 11 kommentarer og
1 løsning

Hvordan ændrer jeg den åbne form fra EditView til NormalView?

Jeg har en form som jeg åbner i Edit view for at tilføje nogle controls. Derefter ønsker jeg at den skal ændres til Form view (formularvisning).
Avatar billede terry Ekspert
29. august 2001 - 16:16 #1
how are you opening it in edit view?
Avatar billede hynne Nybegynder
29. august 2001 - 16:19 #2
  DoCmd.OpenForm \"Test\", acDesign
Avatar billede terry Ekspert
29. august 2001 - 16:20 #3
So it seems we are talking Access?
Avatar billede terry Ekspert
29. august 2001 - 16:29 #4
cant you just open it

DoCmd.OpenForm \"Test\"

or do you want to save the alterations first?

DoCmd.Close acForm, \"Test\", acSaveYes and then open it again
Avatar billede hynne Nybegynder
29. august 2001 - 18:30 #5
Det var jo også mit bud, men når den åbner, er rettelserne ikke blevet gemt.

Jeg har også prøvet med
DoCmd.Save acForm, \"Test\"
først, men så kommer der en fejlmeddelelse
\'Save-handlingen blev annulleret\'. Hvis jeg så vælger Debug og derfra trykker F5 for at fortsætte koden med den linie der fejlede, så lykkes det, og den gemmer formen! Jeg fatter det ikke.
Avatar billede hynne Nybegynder
29. august 2001 - 18:45 #6
Jeg har lige opdaget at hvis jeg stepper igennem programmet med F8, er der heller ingen problemer. Kan det skyldes at den forsøger at gemme før den er helt færdig med at oprette de controls jeg lægger på den? Det lyder bare ikke sandsynligt.
Avatar billede terry Ekspert
29. august 2001 - 20:07 #7
Have you tried?

Make the alterations
then
DoCmd.Close acForm, \"Test\", acSaveYes
Then
DoCmd.OpenForm \"Test\"

Could you send the dB for  me to see?
dkTeBrSa@Europe.Lego.com (.com is part of the hyperlink)





Avatar billede hynne Nybegynder
29. august 2001 - 20:23 #8
Her er koden. Den er mildest talt lidt rodet, men jeg har også efterladt lidt af de forskellige forsøg jeg har gjort:

Private Sub cmbÅbnTestFormular_Click()
  Dim DBPATH As String
  DBPATH = Application.CurrentProject.Path & \"\\dvd.mdb\"

  Dim frmTest As Form
  Dim cn As ADODB.Connection
  Dim rs As ADODB.Recordset
  Dim strVal As String
  Dim a As Integer
  Dim chk(10) As CheckBox
  Dim lbl(10) As Label
 
  Set cn = New ADODB.Connection
  Set rs = New ADODB.Recordset

  cn.Provider = \"Microsoft.Jet.OLEDB.4.0\"
  cn.Open DBPATH
  rs.Open \"GenreListe\", cn

\'  Set frmTest = CreateForm(, \"Test\")
\'  frmTest.Caption = \"Test-form\"

  DoCmd.OpenForm \"Test\", acDesign

    a = 1
  While Not rs.EOF
    Set chk(a) = CreateControl(\"Test\", acCheckBox, , , , 500, 500 + a * 500, 300, 300)
    Set lbl(a) = CreateControl(\"Test\", acLabel, , , , 800, 500 + a * 500, 3000, 300)
    lbl(a).Caption = rs.Fields(\"Genre\")
    a = a + 1
    rs.MoveNext
  Wend
  rs.Close
  cn.Close
  For a = 1 To 10000
    For b = 1 To 100
    Next
  Next
\'  DoCmd.Close acForm, \"Test\", acSaveYes
  DoCmd.Save acForm, \"Test\"
\'  DoCmd.Close acForm, \"Test\", acSaveYes
  DoCmd.OpenForm \"Test\"
End Sub
Avatar billede terry Ekspert
29. august 2001 - 21:48 #9
hi hynne!
From your code I can see that you are creating a checkbox and a label for each record in GenreListe. So I assume that there are only 10 records!

What would you do if you had a 1000?

I could still take a look, and I would need yiur dvd.mdb too!

Avatar billede terry Ekspert
31. august 2001 - 14:09 #10
Hi hynne> Have you looked at what I sent you yet?
Avatar billede hynne Nybegynder
31. august 2001 - 15:23 #11
Ja. jeg har set lidt på det. (Jeg har ikke haft så meget tid).
Jeg kan simpelthen ikke se hvad der ændret bortset fra at det åbenbart ikke er nødvendigt at lave en forbindelse til den aktive database (sådan set meget logisk!), men hvad er det der gør at den fungerer nu?

Nå pyt! Du er jo forrygende til det her. Kan du lige hjælpe mig med en sidste ting:

Hvordan smider jeg pointene i hovedet på dig?

Og mange tak i øvrigt. Imponerende indsats!
Avatar billede terry Ekspert
31. august 2001 - 16:45 #12
Hi Hynne>

I\'m not quite sure myself. The connection is closed and everything seems to be as it should. But thats what makes \"EDB\" interesting!

Points, oh yes thanks!
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