Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-01 14:30:30 - Fredrik Molnar, i forum visual basic - allmänt, Tråden har 10 Kommentarer och lästs av 497 personer

Hejsan, jag har följande problem:
Låt oss säga att jag har 2 pictureboxar, jag vill att innehållet i picturebox1 skall kopieras till Clipboard tillsammans med innehållet i picturebox2...
Delar av innehållet i picturebox2 är inte synligt på skärmen så det går inte att göra en screenshot-lösning på det hela..

Några förslag??

/F


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-01 14:44:35 - Hans-Gunnar Nilsson

använd bitblt api anrop, kan inte komma ihåg syntaxen just nu, men jag har löst det på det viset, sök på nätet så hittar du garanterat info om hur du gör.


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-02 09:31:38 - Andreas Hillqvist

Hur skall bilderan kombineras?


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-03 12:47:57 - Fredrik Molnar

resultatet skall se ut så här:

---------
|Bild 1 |
---------
|Bild 2 |
---------

typ...

/F


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-03 21:41:52 - Andreas Hillqvist

Detta kanske kan var något att arbeta med:
<code>
Option Explicit

Function Max(ParamArray Values() As Variant) As Variant
Dim Index As Long
Max = Values(0)
For Index = 1 To UBound(Values)
If Max < Values(Index) Then
Max = Values(Index)
End If
Next
End Function

Private Sub Command1_Click()
Picture3.Move 0, 0, Max(Picture1.Width, Picture2.Width), Picture1.Height + Picture2.Height
Picture3.PaintPicture Picture1.Image, 0, 0
Picture3.PaintPicture Picture2.Image, 0, Picture1.Height
Clipboard.Clear
Clipboard.SetData Picture3.Image, vbCFBitmap
End Sub

Private Sub Form_Load()
Picture1.BorderStyle = vbBSNone
Picture2.BorderStyle = vbBSNone
Picture3.AutoRedraw = True
Picture3.BorderStyle = vbBSNone
End Sub
</code>


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-06 14:46:10 - Fredrik Molnar

Kanske dumt förklarat av mig.. Det finns ingen bild i pictureboxarna utan jag har ritat fram med linjer m.m. och det är det framritade jag vill ha ut, hela pictureboxen är heller inte synlig utan en del av den måste scrollas för att få fram, det är här alla mina försök faller, det som inte är "synligt" det kommer inte med..


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-06 16:23:08 - Hans-Gunnar Nilsson

Tjena !

Hittade koden för att använda bitblt, men du får experimentera med den så att det passar ditt syfte. objFrom som skickas med i anropet är en referens till en picturebox.

Lycka till !

Public Function CopyEntirePicture(ByRef objFrom As Object) As Boolean
Dim lhDC As Long
Dim lhBMP As Long
Dim lhBMPOld As Long
Dim lWidthPixels As Long
Dim lHeightPixels As Long

' Create a DC compatible with the object we're copying
' from:
lhDC = CreateCompatibleDC(objFrom.hdc)
If (lhDC <> 0) Then
' Create a bitmap compatible with the object we're
' copying from:
lWidthPixels = objFrom.ScaleX(objFrom.ScaleWidth, objFrom.ScaleMode, vbPixels)
lHeightPixels = objFrom.scaleY(objFrom.ScaleHeight, objFrom.ScaleMode, vbPixels)
lhBMP = CreateCompatibleBitmap(objFrom.hdc, lWidthPixels, lHeightPixels)
If (lhBMP <> 0) Then
' Select the bitmap into the DC we have created,
' and store the old bitmap that was there:
lhBMPOld = SelectObject(lhDC, lhBMP)

' Copy the contents of objFrom to the bitmap:
BitBlt lhDC, 0, 0, lWidthPixels, lHeightPixels, objFrom.hdc, 0, 0, SRCCOPY

' Remove the bitmap from the DC:
SelectObject lhDC, lhBMPOld

' Now set the clipboard to the bitmap:
OpenClipboard 0
EmptyClipboard
SetClipboardData CF_BITMAP, lhBMP
CloseClipboard

' We don't delete the Bitmap here - it is now owned
' by the clipboard and Windows will delete it for us
' when the clipboard changes or the program exits.
End If

' Clear up the device context we created:
DeleteObject lhDC
End If
End Function


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-06 16:53:41 - Andreas Hillqvist

KAn du inte lägga med koden så är det lätare att hjälpa dig.


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-07 08:24:32 - Fredrik Molnar

Hej!

Jag har löst det tack vare alla tips jag fått här..

Problemet med alla varianter var att den delen som inte syntes på skärmen blev vit, lösningen blev att "scrolla" neråt och att kopiera pixel för pixel in i den tredje pictureboxen, koden som jag använde:

<code>
Me.pPrint.Cls
Me.pPrint.Width = Me.contHeader.Width - VScroll1.Width
Me.pPrint.Height = Me.contMonth.Height + Me.contHeader.Height '+ 15000
Me.pPrint.AutoRedraw = True

For Y = 1 To contHeader.Height Step Screen.TwipsPerPixelY
For X = 1 To contHeader.Width Step Screen.TwipsPerPixelX
pPrint.PSet (X, Y), contHeader.Point(X, Y)
Next X
Next Y
For Y = 1 To contMonth.Height Step Screen.TwipsPerPixelY
If Y + contHeader.Height >= contPlaceholder.Height Then
contMonth.Top = contMonth.Top - Screen.TwipsPerPixelY
End If
For X = 1 To contMonth.Width Step Screen.TwipsPerPixelX

DoEvents
pY = Y + contHeader.Height
pPrint.PSet (X, pY), contMonth.Point(X, Y)
Next X
Next Y
Clipboard.Clear
Clipboard.SetData Me.pPrint.Image, vbCFBitmap

contMonth.Top = 0
</code>


Säkert inte det mest optimala sättet att göra det på, men det fungerar..

/F


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-07 09:47:32 - Andreas Hillqvist

Vad är det du ritar upp? Hur ser koden som ritar upp ut?


Svara

Sv: Kopiera innehållet i två pictureboxar till Clipboard

Postades av 2003-10-08 15:26:18 - Fredrik Molnar

Det är en affärshemlighet... ;)

Nää.. Men jag ritar upp en kalender med linjer och labels som jag sedan fyller med poster från olika källor...


Dag1 Dag2 Dag3 ... Dag31
Per1 X
Per2 XXXXXXXX XXXXXXX
Per3 XXXXXXXXXXXXXXXXXXXXX
.
.
.
Per51 XXX X XXX XXXXX

liknande nåt sånt..


Svara

Nyligen

  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe
  • 20:22 Spel
  • 17:07 Snabb och trevlig webbplats utan l

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 120
27 958
271 737
466
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies