Re: Bild in eine Buttonkomponente??
Zitat:
wie hast du es eigentlich mit deinem Button gemacht (ich würde es wenn es geht nur ohne GDI+ machen) unter uns: ich finde die GDi+.dll nicht !!, weder auf msdn noch bei deinem Source :( @HalloDu einen "Runden Button" habe ich ja auch schon geschrieben --> .pas am Anfang |
Re: Bild in eine Buttonkomponente??
Zur DLL: schau mal hier (am Besten mit dem IE).
|
Re: Bild in eine Buttonkomponente??
unter deinem Link steht, dass die Seite weggezogen ist und dann werde ich zu "Windows® Server 2003 SP1 Platform SDK Web Install" verlinkt (mit IE 7).
und kannst du mir vielleicht bei meinem Problem weiterhelfen: bis Image laden komme ich mit, abscannen auch noch aber danach stehe ich auf der Leitung??? |
Re: Bild in eine Buttonkomponente??
Du müsstest die Form erkennen und dementsprechend eine Region bilden, aber da schreib ich jetzt keinen Source dazu, das ist mir viel zu aufwändig.
|
Re: Bild in eine Buttonkomponente??
na gut danke.
kann mir vielleicht jemand einen Link oder ein Tutorial zu dem von DeddyH angesprochenes Thema geben? |
Re: Bild in eine Buttonkomponente??
Delphi-Quellcode:
Liefert dir eine Region zu dem übergebenen Bild, wobei die Region alle Teile ausschliesst, welche die Transparenzfarbe des Bitmaps haben.
function CreateBitmapRegion(const ABitmap: TBitmap): HRGN;
var lTransparentColor: TRGBTriple; lX, lY, lStartX: Integer; lPixel: PRGBQuad; lExcluded: HRGN; begin if assigned(ABitmap) then begin result := CreateRectRGN(0, 0, ABitmap.Width, ABitmap.Height); ABitmap.PixelFormat := pf32bit; lTransparentColor.rgbtRed := GetRValue(ColorToRGB(ABitmap.TransparentColor)); lTransparentColor.rgbtGreen := GetGValue(ColorToRGB(ABitmap.TransparentColor)); lTransparentColor.rgbtBlue := GetBValue(ColorToRGB(ABitmap.TransparentColor)); for lY := 0 to pred(ABitmap.Height) do begin lPixel := ABitmap.Scanline[lY]; lStartX := -1; for lX := 0 to pred(ABitmap.Width) do begin if (lPixel^.rgbRed = lTransparentColor.rgbtRed) and (lPixel^.rgbGreen = lTransparentColor.rgbtGreen) and (lPixel^.rgbBlue = lTransparentColor.rgbtBlue) then begin if lStartX = -1 then lStartX := lX; end else begin if lStartX > -1 then begin lExcluded := CreateRectRGN(lStartX, lY, lX, succ(lY)); try CombineRGN(result, result, lExcluded, RGN_DIFF); lStartX := -1; finally DeleteObject(lExcluded); end; end; end; Inc(lPixel); end; if lStartX > -1 then begin lExcluded := CreateRectRGN(lStartX, lY, ABitmap.Width, succ(lY)); try CombineRGN(result, result, lExcluded, RGN_DIFF); finally DeleteObject(lExcluded); end; end; end; end else result := 0; end; Ansonsten: SetWindowRgn() |
Re: Bild in eine Buttonkomponente??
Zitat:
wenn du ein Bitmap benutzt, dann kannst du beim Klicken die Farbe des Pixels unter dem Kursor vom Bild abfragen. Nur wenn die Farbe ungleich von TransparentColor des Bildes ist, dann wird das onMouseDown Ereignis ausgelöst sonst nicht. Alternativ könnte man auch die Maske des Bildes abfragen. |
Re: Bild in eine Buttonkomponente??
@Muetze1
Danke, was muss ich an dem Source ändern, damit ich das gewünschte Bild bekomme (ich will jetzt nicht zu viel verlangen, ich habe aber überhaupt keine Ahnung was der Source bedeutet :( ) @bitsetter stimmt so könnte man es machen, aber es ist leider kein Button :pale: |
Re: Bild in eine Buttonkomponente??
Liste der Anhänge anzeigen (Anzahl: 1)
Kleines Beispiel im Anhang. Damit solltest du dann deinen Button anpassen können.
|
Re: Bild in eine Buttonkomponente??
danke, und hoffentlich ein Bild einfügen können
setzte mich dann morgen damit auseinander :thanks: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz