Ú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
- Google Pixel 10 Pro 256GB, fekete + Pixel Watch 4 45mm LTE + Ajándék: Google Pixel Buds Pro 2
- -ÚJ,2 ÉV GAR- DDR5 GAMER PC: RYZEN 7 8700F/9700X/9800X3D +RX 6600/6700XT +16-64GB DDR5! SZÁMLA!
- Dell Latitude 7430 x360 Ütésálló Érintős Hajtogatós Profi Ultrabook 14" -60% i7-1265U 16/512 IRIS Xe
- HP E24m G4 Monitor FHD IPS webkamerával, Windows Hello-támogatással
- Lenovo ThinkPad T14 Gen 5 Ultra-I7/16GB/512SSD/FHD/garancia!
- GYÖNYÖRŰ iPhone 13 Pro 256GB Sierra Blue - 1 ÉV GARANCIA, Kártyafüggetlen, 100% Akkumulátor,MS3379
- HIBÁTLAN iPhone 13 256GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3663, 100% Akkumulátor
- iKing.Hu - Apple iPhone 15 Pro Max Natural Titanium Titán dizájn, 5 optikai zoom 256 GB- Gari
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
- AKCIÓ!!! RITKASÁG! Microsoft Surface Pro 11 Qualcomm Snapdragon X Elite 16GB 512GB OLED 120Hz Gar!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő

