Hej... Mycket enkelt. Lägg till en picture box med namnet Picture1 och klistra bara in följand kod: Kan du formulera det till en fråga man kan svara på så ska jag göra det. Hej Det är ju en smak sak. Men att påstå att den därför är löjlig är ju omoget. Framför din kritik på ett mer uppfostrat sätt.<br> Så ja barn inte bråka... Jag håller med er alla tre. Jag disskuterar med SvenPon. SvenPon yttrycker sig och trakasser mig ibland lite väl hårt. Men sådan är han. Han är min Nemessis.<br> Hej igen hej igenRita i en picturebox...
Är det någon här som vet hur man gör för att rita i en PictureBox.
Jag vill göra ett program där man kan använda
muspekaren för att rita med.
t ex när jag håller nere musknappen så ritas det en
linje som följer min muspekare
/DennisSv: Rita i en picturebox...
<code>
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button And vbLeftButton Then
Picture1.PSet (X, Y)
End If
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button And vbLeftButton Then
Picture1.Line Step(0, 0)-(X, Y)
End If
End Sub
</code>Sv: Rita i en picturebox...
Men om du gillar att slänga ur dig lölliga kommentarer, så varsegod.Sv: Rita i en picturebox...
Jag behöver inte fråga,det är ett påstående,det är
ganska onödigt att fråga If Button och And när man vet att
det är MouseDown.
If Button = 1 Then Picture1.PSet (X, Y) 'duger utmärkt
så slipper man End if också
tycker
SvenSv: Rita i en picturebox...
<br>
Jag föredrar en If sats med radbrytning och End If. Ger en enklare överblick över koden. Kanske är två rader mer extra. <br>
<br>
Däremot är jag mycket kritisk till att du använder 1 när det finns konstanter som vbLeftButton som är till för just det. And operatorn är oxå en bättre lösning. Dessutom den av microsoft rekomenderade lösningen för att känna av tangent.<br>
<br>
Som om jag är löjlig när jag skriver:
<code>
If Button And vbLeftButton Then
Picture1.PSet (X, Y)
End If
</code>
Då är jag stolt över att skriva löjlig kod. Du kanske oxå borde skriva mer löjlig kod. Så kanske folk lättare kunde förstå den.
/Mvh, Andreas Sv: Rita i en picturebox...
Bara det fungerar så är jag nöjd...
har tyvärr inte möljighet att prova i kväll...
men annars tack för hjälpen...
mvh DennisSv: Rita i en picturebox...
1. Som Dennis säger sluta bråka
2. Som Andreas säger, IF-satser skall brytas.
3. Som Sven.P säger det är onödig overhead att koda if button and vbLeftButton.
(Kanske har A.Hillqvist lite behov att visa att han kan en massa fina saker.
i VB. Efter den lysande Certifieringen. Men jag tycker det är lite dagisnivå
på det hela att skryta på PelleSoft om hur bra poäng man har.)
/[peter.h]Sv: Rita i en picturebox...
<br>
Varför ska man inte ha en if-sats i MouseDown! Finns ju två eller flera knappar på musen eller? Jag valde att bara filtrera vänster. Om jag inte har if-satsen i MouseDown så blir det ju en punkt om man trycker ned vänster musknapp. Förklaradet för mig varför man inte ska ha det?<br>
<br>
Den overhead som den if-satsen åstakommer är försumbar. Inträffar ju endast en gån när användaren trycker ned knappen.<br>
<br>
Om man t.ex har olika färger beroende på höger eller vänster knapp. kan man ju utöka if-satsen:
<code>
Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button And vbLeftButton Then
Picture1.PSet (X, Y), Label1.BackColor
ElseIf Button And vbRightButton Then
Picture1.PSet (X, Y), Label2.BackColor
End If
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button And vbLeftButton Then
Picture1.Line Step(0, 0)-(X, Y), Label1.BackColor
ElseIf Button And vbRightButton Then
Picture1.Line Step(0, 0)-(X, Y), Label2.BackColor
End If
End Sub
</code>
<br>
<br>
Kanske var omoget av mig att skryta med resultatet på mitt prov. Kanske bara skulle sagt att jag hade bra resultat. Men jag var glad över det och ville dela med mig till alla mina vänner på pellesoft. Hoppas jag har några.<br>
<br>
Ska i fortsättningen försöka att skryta så lite som möjligtSv: Rita i en picturebox...
Jag har en bror som har mött en kille på gatan som
hade 960 av 1000, Tycker jag var lite bättre
mvh
SvenSv: Rita i en picturebox...
> Jag föredrar en If sats med radbrytning och End If
Skiter väl i vad du föredrar , jag tycker man skall skriva effektiv kod.
Det är som när man läser vissa "nissars" kod.
Det verkar som dom får betalt efter antal kodrader
DS