/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Baglæns Line [VB6]
Fra : Jens Vestergaard


Dato : 11-03-04 17:51

Hejsa,

En app tegner skrå linier i en PictureBox. Nogle brugere vil gerne have 0
(x-akse) til venstre, nogle vil gerne have 0 til højre. Man er dog enige om,
at 0 (y) er i toppen...

Jeg kan godt finde ud af at vende det hele, men jeg syn's ikke, at jeg gør
det særlig smart. Så mit spørgsmål er: Har nogen en bedre/hurtigere/smartere
løsning end nedenstående, som er en *stærkt* simplificeret udgave af, hvad
jeg laver:

Public RightLeft as Boolean

Private Sub Command1_Click()
Dim x As Integer
RightLeft = Check1.Value = 1
With pic
.ScaleMode = 0
.ScaleWidth = 100
.ScaleHeight = 400
If RightLeft Then
.ScaleLeft = -.ScaleWidth
End If
End With

x = 50
'x er naturligvis i virkeligheden resultatet af en række beregninger

If RightLeft Then
x = -x
End If
pic.Line (0, 0)-(x, 200)
End Sub

Tak for ideer

--
mvh
Jens Vestergaard (mailadr i dette indlæg er ikke gyldig!)
www.railsoft.dk
Døgnets jernbanenyheder: www.railsoft.dk/medier.asp



 
 
Gert Krabsen (13-03-2004)
Kommentar
Fra : Gert Krabsen


Dato : 13-03-04 12:32

Bortset fra, at jeg altid ville placere 0.0 i nederste venstre hjørne, men
jeg er jo osse gammel soldat..

...så kan jeg ikke se, at du kan finde en funktion der er meget kortere end
een linie:

   > x = -x

jeg havde nok i stedet brugt

   X = pic.width-x

for ikke at skulle pille ved .Scale-værdier mere end højst nødvendigt..

men resultatet er jo det samme.


mvh

Krabsen


Thu, 11 Mar 2004 17:51:04 +0100, Jens Vestergaard <j@railsoft.dk> skrev:

> Hejsa,
>
> En app tegner skrå linier i en PictureBox. Nogle brugere vil gerne have 0
> (x-akse) til venstre, nogle vil gerne have 0 til højre. Man er dog enige
> om,
> at 0 (y) er i toppen...
>
> Jeg kan godt finde ud af at vende det hele, men jeg syn's ikke, at jeg
> gør
> det særlig smart. Så mit spørgsmål er: Har nogen en
> bedre/hurtigere/smartere
> løsning end nedenstående, som er en *stærkt* simplificeret udgave af,
> hvad
> jeg laver:
>
> Public RightLeft as Boolean
>
> Private Sub Command1_Click()
> Dim x As Integer
> RightLeft = Check1.Value = 1
> With pic
> .ScaleMode = 0
> .ScaleWidth = 100
> .ScaleHeight = 400
> If RightLeft Then
> .ScaleLeft = -.ScaleWidth
> End If
> End With
>
> x = 50
> 'x er naturligvis i virkeligheden resultatet af en række beregninger
>
> If RightLeft Then
> x = -x
> End If
> pic.Line (0, 0)-(x, 200)
> End Sub
>
> Tak for ideer
>



--
Sendt via Opera.
www.krabsen.dk
www.responsnord.dk
mfl

Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409081
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste