Avatar billede alexandersen Nybegynder
19. maj 2003 - 10:46 Der er 6 kommentarer og
1 løsning

Udskriv flere variabler på samme linie

Jeg har følgende kode:
For a = opdeling To opdeling + 5
   
     
        Printer.CurrentX = 40
        Printer.Print udskriv1(a) & Chr$(9) & Chr$(9) & udskriv2(a) & Chr$(9) & udskriv3(a)
        Printer.CurrentX = 80
        Printer.Print udskriv4(a)
        Printer.CurrentX = 80
        Printer.Print udskriv5(a) & Chr$(9) & Chr$(9) & udskriv6(a)
   
        Printer.Print Chr$(13)
   
   
        Next

Jeg vil gerne skrive flere variabler på samme linie, men med afstand. Jeg har foreløbig brugt chr$(9), men idet jeg har sat overskrifter ind ved hjælp af

Printer.currentx = og printer.currentY
Vil jeg gerne bruge dette til FOR NEXT løkken.
Jeg kan ikke bruge en fast Y position idet jeg gerne skulle skifte linie for hver løkke.

Håber der er nogen der forstår mit spåørgsmål.
Avatar billede jrl0469 Nybegynder
19. maj 2003 - 11:51 #1
Er det Y du fisker efter?
Avatar billede hiks Nybegynder
19. maj 2003 - 12:22 #2
Kan du ikke bruge noget af følgende:

PosY = 0 ' din y-position

For a = opdeling To opdeling + 5

        Printer.CurrentY = PosY   
        Printer.CurrentX = 40
        Printer.Print udskriv1(a) & Chr$(9) & Chr$(9) & udskriv2(a) & Chr$(9) & udskriv3(a)
        Printer.CurrentX = 80
        Printer.Print udskriv4(a)
        Printer.CurrentX = 80
        Printer.Print udskriv5(a) & Chr$(9) & Chr$(9) & udskriv6(a)
   
        Printer.Print Chr$(13)
        Printer.CurrentY = PosY + 1 'alt efter skriftstørrelse
      Next

/hiks
Avatar billede hiks Nybegynder
19. maj 2003 - 12:23 #3
sorry - det skulle have været som sådan:

PosY = 0 ' din y-position

For a = opdeling To opdeling + 5

        Printer.CurrentY = PosY   
        Printer.CurrentX = 40
        Printer.Print udskriv1(a) & Chr$(9) & Chr$(9) & udskriv2(a) & Chr$(9) & udskriv3(a)
        Printer.CurrentX = 80
        Printer.Print udskriv4(a)
        Printer.CurrentX = 80
        Printer.Print udskriv5(a) & Chr$(9) & Chr$(9) & udskriv6(a)
   
        Printer.Print Chr$(13)
        PosY = PosY + 1 'alt efter skriftstørrelse
      Next
Avatar billede alexandersen Nybegynder
19. maj 2003 - 16:04 #4
Det jeg gerne ville var noget i retning af:

For a = opdeling To opdeling + 5

        Printer.CurrentY = PosY   
        Printer.CurrentX = 40
        Printer.Print udskriv1(a) & printer.currentx= 50 & udskriv2(a) & printer.currentX= 90 & udskriv3(a)
        Printer.CurrentX = 80
        Printer.Print udskriv4(a)
        Printer.CurrentX = 80
        Printer.Print udskriv5(a) & printer.currentX=50 & udskriv6(a)
   
        Printer.Print Chr$(13)
              Next

Men det vil den ikke, så melder den en fejl. Jeg har prøvet at fjerne Printer så der kun står currentX=50 men det kan jeg heller ikke få til at virke.
Når jeg bruger chr$(9) er der nogle tilfælde hvor det ikke passer ind i placeringen.
Avatar billede hiks Nybegynder
19. maj 2003 - 16:37 #5
nååå jamen så bruger du jo bare den samme y position og skriver en linie mere med printer.currentx. Sådan:

Printer.CurrentY = 10
Printer.CurrentX = 10
Printer.Print udskriv1(a)

printer.currentx= 50
printer.print udskriv2(a)

printer.currentX= 90
printer.print = udskriv3(a)

Next

og husk at flyt Y positionen...

mvh Hiks
Avatar billede alexandersen Nybegynder
19. maj 2003 - 17:55 #6
Ja problemet er bare at når jeg skriver det sådan skriver printeren det i 3 forskellige linier. Hvis jeg så bruger bruger printer.currentY vil den i for next løkken skrive det oven i hinanden, med mindre jeg i bunden af løkken ændre y værdien. Er der nogle tal for hvor meget der svarer til et linie skift ved forskellige skrifttyper, eller prøver man sig frem?
Avatar billede hiks Nybegynder
19. maj 2003 - 19:06 #7
Man kan gøre det på den måde jeg brugte før eller man kan bruge eksempelvis:

PosY = printer.TextHeight + PosY

ellers må du sjusse dig lidt frem. TextHeight tager højde for skrifttype!

/Hiks
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