Új hozzászólás Aktív témák
-
Tomi_78
aktív tag
Sziasztok!
Készülő programomban van egy ScrollBox, azon pedig egy TImage kép (terepVaszon néven). Erre a TImage-re szeretnék még rajzolni rácsvonalakat, de úgy, hogy ne legyenek a TImage részei, mert később a rácsvonalak nélkül szeretném elmenteni és a rácsvonalak mutatása ki/bekapcsolható legyen.
Mindennek megvalósítására létrehozok még egy TImage-et (tvracskep néven), amelynek a ScrollBox a szülője, hogy azon helyezkedjen el, és a TImage vásznához hozzárendelek egy BitMap képet, amelyen a rácsok rajzolása megtörtént.
Ki is rajzolódik a rács, de mindig egy fekete háttéren, amit sehogy nem bírok eltüntetni, és így nem látszik az alatta levő kép.
Lehetséges egyáltalán egy képen rajzolni valamit úgy, hogy a rajzkép áttetsző legyen a nem használt részein? Ha igen, hogyan?
Itt a teljes kód, amit írtam:procedure TForm1.racsmutatoGombMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var bm: TBitmap;
vszvonalhely,fugvonalhely: word;
begin
if tvracsmutat=true then
begin
tvracsmutat:=false;
if vantvracs=true then
begin
FreeAndNil(tvracskep);
vantvracs:=false;
end;
end
else
begin
tvracsmutat:=true;
if vantvracs=false then
begin
tvracskep:=TImage.Create(tvScrBox);
tvracskep.Parent:=tvScrBox;
tvracskep.Left:=0;
tvracskep.Top:=0;
tvracskep.width:=terepVaszon.width;
tvracskep.height:=terepVaszon.Height;
tvracskep.Transparent:=true;
bm:=TBitmap.Create;
bm.width:=terepVaszon.width;
bm.height:=terepVaszon.Height;
bm.PixelFormat:=pf32Bit;
bm.Transparent:=true;
bm.Mask(clBlack);
fugvonalhely:=csempeszel;
vszvonalhely:=csempemag;
bm.canvas.pen.color:=clBlue;
while fugvonalhely<terepVaszon.width do
begin
bm.canvas.line(fugvonalhely,0,fugvonalhely,terepVaszon.height);
inc(fugvonalhely,csempeszel);
end;
while vszvonalhely<terepVaszon.height do
begin
bm.canvas.line(0,vszvonalhely,terepVaszon.width,vszvonalhely);
inc(vszvonalhely,csempemag);
end;
tvracskep.picture.graphic:=bm;
tvracskep.picture.graphic.transparent:=true;
FreeAndNil(bm);
end;
vantvracs:=true;
end;
end;
Új hozzászólás Aktív témák
- Garancia kérdés, fogyasztóvédelem
- Olcsó vs. drága egér: melyiknél érzed meg igazán a különbséget?
- Kormányok / autós szimulátorok topikja
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- OLED TV topic
- BestBuy topik
- Okos Otthon / Smart Home
- Spórolós topik
- Sorozatok
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- További aktív témák...
- Xbox Wireless headset
- Samsung Galaxy S22 8/128GB, Megkímélt, Kártyafüggetlen, Töltővel, 1 Év Garanciával!
- Bomba ár! Lenovo ThinkPad L13 G1i - i5-10GEN I 8GB I 256SSD I 13,3" FHD I HDMI I W11 I Cam I Gar
- Bomba ár! Lenovo ThinkPad L390 - i5-8GEN I 8GB I 256SSD I 13,3" FHD I HDMI I Cam I W11 I Gari!
- Lenovo ThinkPad X1 Carbon Gen 9 i7-1185G7 32 GB RAM Iris Xe 4k kijelző törésgarancia
- Samsung Galaxy A16 / 4/128GB / Kártyafüggetlen / 12Hó Garancia
- HP Zbook Studio G8 WorkStation i7-11850H 32GB 512GB Nvidia Quadro T1200 400NIT, 100% sRGB Garis!
- RTX 5080-as GAMER laptopok + dokkolók + licencek
- Keresek Xbox Series S / Series X / Playstation 5 konzolokat
- Logitech G29 SE Driving Force PC/PS4/PS5
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest

