Håller på att laborerar med alla API som har med dib och bmp att göra. för att du har GetDC(0) som källa för grafiken... du borde istället ha Form1.hDC mmm...Tackar,har experimenterat vidare sen sist och kommit fram tillGrafik bmp exepert frågas.
Allt efter Trash:s utmaning Mandelbrot.. Nu till frågan.
Jag har en Form som jag lagt ut lite olika kontroller på.
Jag kör GetPixel på Form1 och därefter SetPixel på Form2.
Då kommer Label och TextBox med , men inte Command ListBox mfl. Varför ?.
Tror att det har med olika bitplanes att göra , men det är en riktig gråzon för mig.
Om jag skriver så här förväntar jag få med Formen , men jag får med hela skärmen.
iDC = CreateCompatibleDC(Form1.hdc)
iBitmap = CreateDIBSection(iDC, bitInf, DIB_RGB_COLORS, _
ByVal 0&, ByVal 0&, ByVal 0&)
SelectObject iDC, iBitmap
BitBlt iDC, 0, 0, bitInf.bmiHeader.biWidth, bitInf.bmiHeader.biHeight, _
GetDC(0), 0, 0, vbSrcCopy
GetDIBits iDC, iBitmap, 0, bitInf.bmiHeader.biHeight, bBytes(1), _
bitInf, DIB_RGB_COLORSSv: Grafik bmp exepert frågas.
GetDC(0) ger en DC till hela skämen.... den måste senare förstöras för att ta tillbaka minne. Kommer dock inte ihåg om funktionen heter DeleteDC eller nått annat.Sv: Grafik bmp exepert frågas.
ungefär detsamma.Anledningen till experimenten är att det ofta kommer
frågor och själv skulle jag också ha nytta av det. "Hur gör man för att Printa ut hela
Formen" som den ser ut på min skärm.Det finns ingen bra metod att få till det.
Tänkte då gå via PrinterObjektet och en PictureBox som är en kopia av Formen och WYSWYG.
Form1.PrintForm är ju ganska värdelös har alldrig fått det snyggt.