Avatar billede bruger_pil Nybegynder
08. november 2004 - 13:43 Der er 14 kommentarer og
1 løsning

Hvordan "flyttes" en knap vha VBA

Jeg har behov for at flytte en knap på en formular ved hjælp af VBA. Hvad er den rigtige kode?

Kan man få access til vise koordinaterne i "egneskaber" for en knap, eller på en anden måde få de aktuelle koordinater vist?

På forhånd tak
Avatar billede rbj_fp Nybegynder
08. november 2004 - 13:49 #1
DitKnapnavn.move(100,100,1000,1000)
Hvor at Parameterne kommer i orden: pixel fra venstre, pixel fra top, højde i px, bredde i px
Avatar billede mugs Novice
08. november 2004 - 13:50 #2
Me.Kommandoknap4.Top = 100
Me.Kommandoknap4.Left = 200
Avatar billede bruger_pil Nybegynder
08. november 2004 - 13:56 #3
Kan disse koordinater "oversættes", såvidt jeg kan se angives målene ikke i pixel, men jeg kan tage fejl.
Avatar billede mugs Novice
08. november 2004 - 13:59 #4
Det er pixel, og så vidt jeg ved kan de ikke "oversættes"
Avatar billede bruger_pil Nybegynder
08. november 2004 - 14:01 #5
point taken ;-)
Avatar billede terry Ekspert
08. november 2004 - 14:01 #6
The button coordiantes are in relation to the current window and they are already visible in the properties window.
Avatar billede terry Ekspert
08. november 2004 - 14:05 #7
in VBA you set the values using twips 567 = 1cm

Me.Kommandoknap4.Top = 567
Me.Kommandoknap4.Left = 567
Avatar billede rbj_fp Nybegynder
08. november 2004 - 14:09 #8
Med Form_DitFormNavn.InsideHeight og Form_DitFormNavn.InsideWidth kan du få målene på din form i px, og udfra disse kan du beregne en given placering i pct f.eks. Det kræver dog at du lave lidt kode, men hvis du ligger denne kode som funktioner i et module, kan du bruge det igen senere.
Avatar billede bruger_pil Nybegynder
08. november 2004 - 14:16 #9
I min version af access vises alt i centimeter!
Også i egenskaber!
Avatar billede bruger_pil Nybegynder
08. november 2004 - 14:21 #10
Jeg har testet de forskellige forslag, såvidt jeg kan se passer Terry's svar.
Avatar billede rbj_fp Nybegynder
08. november 2004 - 14:24 #11
Jeg syntes stadigvæk at mugs burde få point for hans forslag, da det faktisk var ham som kom med den løsning du bruger.
Avatar billede terry Ekspert
08. november 2004 - 14:25 #12
In the forms Open event try this code
Me.myButton.Top = 567
Me.myButton.Left = 567

Me.myButton.Caption = "Top = " & Me.myButton.Top & " Left = " & Me.myButton.Left

This is in twips!

Now lookk at the properties, you now see it in centimeters!

So to set it in code (vba) you use twips and in properties you use centimetres
Avatar billede terry Ekspert
08. november 2004 - 14:28 #13
I dont mind giving mugs some of the points!
Avatar billede mugs Novice
08. november 2004 - 14:29 #14
For at bruge formularens designgitter kan man jo begynde at ganger og dividere:

Me.myButton.Top = 2 * 567 = 2 cm eller 1134px
Avatar billede mugs Novice
08. november 2004 - 14:30 #15
Lad os glemme point og koncentrere os at løse problemet / komme med gode forslag
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