Hirdetés
- Milyen TV-t vegyek?
- OLED TV topic
- Melyik tápegységet vegyem?
- Azonnali fotós kérdések órája
- Mikrokontrollerek Arduino környezetben (programozás, építés, tippek)
- Épített vízhűtés (nem kompakt) topic
- SSD kibeszélő
- Kormányok / autós szimulátorok topikja
- Milyen billentyűzetet vegyek?
- Milyen asztali (teljes vagy fél-) gépet vegyek?
Új hozzászólás Aktív témák
-
válasz
Tomi_78
#2027
üzenetére
Tehát akkor 2 dologról van szó
1. van egy pályakép, amit mozogjon/mozgatható legyen (az mindegy most a példa kedvéért, hogy a mozgatást mi váltja ki: egér/bill. időzítő stb)
2. te rá szeretnél még rajzolni a pályaképedre ilyen "puffancs"-nak
keresztelt dolgokat és az alatt is mozgatható legyen a pályaképMaradjunk a korábban adott forráskódnál, mert az elég egyszerű, annyival kell kiegészíteni, hogy mindig ki kell rajzoltatni a "puffancsokat", de magát a canvas "törlését" a CopyRect belső eljárás megoldja azáltal, hogy a pályaképből általad megadott négyszög területet bemásolja (ezáltal a canvas adatait törli/felülírja) az image1 objectum canvas-ába. Ezt, mivel belső eljárás, gyorsan teszi. A CopyRect után csak újra ki kell rajzoltatni, amit szeretnél(puffancsokat).
Mindösszesen 2 sort módosítottam a korábbi forrásfájlban, ami kiír egy szöveget, meg rajzol egy kört.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Image1: TImage;
ScrollBar1: TScrollBar;
ScrollBar2: TScrollBar;
Button1: TButton;
procedure ScrollBar2Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
MyBitmap: TBitmap;
implementation
{$R *.DFM}
procedure TForm1.ScrollBar2Change(Sender: TObject);
var
RectDest, RectSource: TRect;
begin
RectDest:=Rect(0, 0, Image1.Width, Image1.Height);
RectSource:=Rect(ScrollBar1.Position, ScrollBar2.Position, Scrollbar1.Position+Image1.Width, ScrollBar2.Position+Image1.Height);
Image1.Canvas.CopyRect(RectDest, MyBitmap.Canvas, RectSource);
Image1.Canvas.TextOut(20,MyBitmap.Height div 2,'Ez itt egy szöveg, amit mindig ki kell iratni');
Image1.Canvas.Ellipse(30,30,80,80);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
MyBitmap:=TBitmap.Create;
MyBitmap.LoadFromFile('factory.bmp');
Image1.Picture.Bitmap.Assign(MyBitmap);
ScrollBar1.Max:=MyBitmap.Width-1-Image1.Width;
ScrollBar2.Max:=MyBitmap.Height-1-Image1.Height;
end;
end.Szóval nem az a lényeg az egészben, hogy Scrolbar-t használsz-e vagy sem, hanem hogy a CopyRect eljárást használd.
Új hozzászólás Aktív témák
- Víz- gáz- és fűtésszerelés
- Formula-1
- Milyen TV-t vegyek?
- Mibe tegyem a megtakarításaimat?
- Autós topik
- A lapkakészlet és az akku különbözteti meg a Motorola Edge 60 és Edge 60 Pro-t
- Xbox Series X|S
- Amazfit Helio Strap – képernyőmentesen
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Arc Raiders
- További aktív témák...
- ASUS RTX 4070 Ti TUF Gaming 12GB OC (9 hónap magyar garancia)
- Olcsó számítógép PC - Játékra is! I7 4770 / 16GB DDR3 / GTX 1650 4GB / 256 SSD + 1TB HDD
- Apple MacBook Air 13.6" (2025) M4 Chip, 16GB RAM, makulátlan állapotban 36hó garanciával
- PlayStation 5 Pro konzol (2TB), 3 év garanciával, makulátlan állapotban
- APPLE WATCH SERIES 11 46mm GPS, BLACK + Apple Care+
- HIBÁTLAN iPhone 14 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3240, 100% Akksi
- Apple iPhone 12 64GB,Átlagos,Adatkabel,12 hónap garanciával
- AKCIÓ! Apple Studio Display 27 5K Nanotexturált üveg monitor garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- Bomba ár! Toshiba Satellite C850 - Intel B960 I 4GB I 500GB I 15,6" HD I HDMI I Cam I W10 I Gari!
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
keresztelt dolgokat és az alatt is mozgatható legyen a pályakép


