Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Potrebna pomoc oko treperenja timage-a razvucenog preko forme

[es] :: Pascal / Delphi / Kylix :: Potrebna pomoc oko treperenja timage-a razvucenog preko forme

[ Pregleda: 1482 | Odgovora: 15 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Vdjuric
Vladimir Djuric
Beograd

Član broj: 20863
Poruke: 64
*.dial.InfoSky.Net.

Sajt: www.marettasoftware.com


Profil

icon Potrebna pomoc oko treperenja timage-a razvucenog preko forme09.05.2005. u 10:38

Postavio sam TImage preko cele MDI forme (Image1.AlClient:=true, na formi Form1) i u njega sam ucitao bmp. Problem se javlja kada se misem vrsi resize forme - ceo image treperi... U timage-u nisu ukljucene opcije tipa stretch/autosize/transparent, a slika je veca od velicine ekrana.
Kako ove prevazici? Ukljucio sam Form1.doublebuffered... :(

poz
09.05.2005. u 10:38 

bondja

Član broj: 10286
Poruke: 135
*.adsl.sezampro.yu.



Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme09.05.2005. u 13:26
TMDIForm = class(... )
public
procedure WMEraseBkgnd(var Message: TWMEraseBkgnd); message WM_ERASEBKGND;
. . .
end;

procedure TMDIForm.WMEraseBkgnd(var Message: TWMEraseBkgnd);
begin
Message.Result := 1;
edn;

Pozdrav!
09.05.2005. u 13:26 

Vdjuric
Vladimir Djuric
Beograd

Član broj: 20863
Poruke: 64
*.dial.InfoSky.Net.

Sajt: www.marettasoftware.com


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme09.05.2005. u 14:39
Citat:
bondja: TMDIForm = class(... )
public
procedure WMEraseBkgnd(var Message: TWMEraseBkgnd); message WM_ERASEBKGND;
. . .
end;

procedure TMDIForm.WMEraseBkgnd(var Message: TWMEraseBkgnd);
begin
Message.Result := 1;
edn;

Pozdrav!


Upravo sam probao i ovo, ali i dalje treperi :(
09.05.2005. u 14:39 

DeYo
Dejan Vukmirovic
developer @ Mogul
Pozarevac/Bgd/Stockholm

Član broj: 36771
Poruke: 83
*.etf.bg.ac.yu.

Sajt: www.linkedin.com/in/dejan..


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme09.05.2005. u 15:11
Postavi panel na formu i njemu stavi align=alClient, pa na taj panel postavi sliku i njoj takodje alClient.

Imaces problem prilikom stvaranja MDI formi, verovatno ces morati da radis nesto tipa Panel1.Visible=false u OnCreate eventu, ali snaci ces se.

hint:
http://www.elitesecurity.org/tema/105078/0#680006
09.05.2005. u 15:11 

Nemanja Avramović
PHP developer, Webinsane
Mladenovac, Srbija

Član broj: 32202
Poruke: 3996
*.yu1.net.

ICQ: 266136396
Sajt: www.avramovic.info


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme09.05.2005. u 18:48
DoubleBuffered:=true; //ovo?
Moj sajt. Moj blog. Moj avatar. Moj grad. Moja frizura.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
09.05.2005. u 18:48 

DeYo
Dejan Vukmirovic
developer @ Mogul
Pozarevac/Bgd/Stockholm

Član broj: 36771
Poruke: 83
*.etf.bg.ac.yu.

Sajt: www.linkedin.com/in/dejan..


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme10.05.2005. u 13:13
Citat:
JaHvram: DoubleBuffered:=true; //ovo?


Procitaj topic do kraja.
DoubleBuffered ne radi. Poenta je u postavljanju slike na panel koji ce kontrolisati njeno iscrtavanje pa zato nece ni biti treperenja, blinkanja...
10.05.2005. u 13:13 

Vdjuric
Vladimir Djuric
Beograd

Član broj: 20863
Poruke: 64
*.dial.InfoSky.Net.

Sajt: www.marettasoftware.com


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme10.05.2005. u 14:21
Citat:
DeYo: Postavi panel na formu i njemu stavi align=alClient, pa na taj panel postavi sliku i njoj takodje alClient.

Imaces problem prilikom stvaranja MDI formi, verovatno ces morati da radis nesto tipa Panel1.Visible=false u OnCreate eventu, ali snaci ces se.

hint:
http://www.elitesecurity.org/tema/105078/0#680006


Treperenje se bitno smanjilo kada povecavam formu misem, a potpuno je nestalo kada smanjujem formu misem. Eh sad... kako da resim prikaz MDI formi ? Sve sto sam probao ne radi... Kako si ti to resio kada si imao slican problem?

Pozdrav & hvala puno svima na odgovorima :)
10.05.2005. u 14:21 

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1402
82.208.201.*

ICQ: 246436949


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme10.05.2005. u 17:59
Probao sam s panelom na formi (ne radim visible := true/false jer slika treba da je stalno vidljiva tj pozadina ako sam dobro shvatio). Panel je uvek velicine klijent prostora MDI forme (ili MDI child forme), a Image je uvek velicine klijent prostora Panela (sto mu dodje na isto ). Na rezoluciji 1024x768, slika velicine 1024x768, procesor Intel P4~2GHz, 512 Mb RAM, GeForce 6200 (full hardware accel.) se ne vidi nikakvo treperenje. Mozda koristis neku VEEELIKU sliku ili testiras program na nekom sporijem racunaru. Ako je to upitanju ili smanji sliku ili kupi bolji racunar.
DirectX na srpskom | GLScene na srpskom

There are only 10 types of people in this world; those who understand binary and those who don't.
10.05.2005. u 17:59 

Vdjuric
Vladimir Djuric
Beograd

Član broj: 20863
Poruke: 64
*.dial.InfoSky.Net.

Sajt: www.marettasoftware.com


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme11.05.2005. u 00:53
Citat:
Srki_82: Probao sam s panelom na formi (ne radim visible := true/false jer slika treba da je stalno vidljiva tj pozadina ako sam dobro shvatio). Panel je uvek velicine klijent prostora MDI forme (ili MDI child forme), a Image je uvek velicine klijent prostora Panela (sto mu dodje na isto :) ). Na rezoluciji 1024x768, slika velicine 1024x768, procesor Intel P4~2GHz, 512 Mb RAM, GeForce 6200 (full hardware accel.) se ne vidi nikakvo treperenje. Mozda koristis neku VEEELIKU sliku ili testiras program na nekom sporijem racunaru. Ako je to upitanju ili smanji sliku ili kupi bolji racunar.


Slika je veca od ekrana, tj. 1020 x 770 x 16 [BMP]... A sto se kompa tice Intel P4/2.4/768Mb/GF4/AGP 8x... ne verujem da je do kompa... Mozda je do graficke, ali u svakom slucaju moram da nateram prog. da radi i na slabijim racunarima od ovog. malo treperenja ne smeta, ali u svakom slucaju - ako stavim panel sa image-om na Formu moram prvo da resim kako da se uopste vide MDI child prozori! :( ovo sa panelom skoro i da radi OK, ali ne znam kako da ga nateram da mi se MDI child prozori pojavljuju ispred panela a ne iza njega :(

Ima li neko ideju ??? Odbijam da poverujem da ovo ne moze da se resi na neki relativno jednostavan nacin - jer svaki treci program ima neki wallpaper na sebi :((

eh da imam i jos jedno pitanje: ako bih stavio manju sliku od velicine klijent prostora forme, kako da timage nateram da je prikaze preko celog prostora, ali ne da je "rastegne" vec da je nacrta nekoliko puta (Tile) ?

poz
11.05.2005. u 00:53 

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1402
82.208.201.*

ICQ: 246436949


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme11.05.2005. u 17:50
Upsss... pardon. Uvek zaboravljam da ne koristim TImage nego TImage32 komponentu. Ona je mnogo bolja od TImage (ne treperi, prikazuje alpha kanal iz slike...). Mozes da je skines sa http://g32.org
DirectX na srpskom | GLScene na srpskom

There are only 10 types of people in this world; those who understand binary and those who don't.
11.05.2005. u 17:50 

Vdjuric
Vladimir Djuric
Beograd

Član broj: 20863
Poruke: 64
*.dial.InfoSky.Net.

Sajt: www.marettasoftware.com


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme12.05.2005. u 02:47
Citat:
Srki_82: Upsss... pardon. Uvek zaboravljam da ne koristim TImage nego TImage32 komponentu. Ona je mnogo bolja od TImage (ne treperi, prikazuje alpha kanal iz slike...). Mozes da je skines sa http://g32.org


Ehey stvarno je cool ova komponenta :) Ne treperi, radi kako treba, jedino ne znam kako da nateram MDI child prozore da se vide ispred Timage32 komponente.
Imas li mozda ideju kako da ovo resim ?
poz
12.05.2005. u 02:47 

Rapaic Rajko
programer, Grappolo
Bgd

Član broj: 4105
Poruke: 412
217.119.242.*



Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme19.05.2005. u 07:49
Batali image preko slike i pogledaj u Delphi help-u primer za TCustomForm.OnPaint event. Mnogo buke ni oko cega...

Rajko
19.05.2005. u 07:49 

bondja

Član broj: 10286
Poruke: 135
217.16.78.*



Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme19.05.2005. u 10:22
Ok, evo koda (ko mene je radilo :)

Code:

type
  TMainForm = class(TForm)
 ....
private
    FClientInstance : TFarProc;
    FPrevClientProc : TFarProc;
    procedure ClientWndProc(var Message: TMessage);
end;

implementation

Procedure TMainForm.ClientWndProc(Var Message : TMessage);
var
dc : hdc;
row, col : integer;
begin
with message do
     case msg of
     wm_erasebkgnd:
     begin
     dc := twmerasebkgnd(message).dc;
     for row := 0 to clientheight div wallpaper.picture.height do
       for col := 0 to clientwidth div wallpaper.picture.width do
          bitblt(dc, col * wallpaper.picture.width, row * wallpaper.picture.height,
          wallpaper.picture.width, wallpaper.picture.height,
          wallpaper.picture.bitmap.canvas.handle, 0, 0, srccopy);
       result := 1;
       end;
     else
     Result := Callwindowproc(FPrevclientproc, clienthandle,msg, wparam, lparam);
     end;
end;


procedure TMainForm.FormCreate(Sender: TObject);
begin
  Fclientinstance := makeobjectinstance(clientwndproc);
  FPrevClientProc := Pointer(Getwindowlong(Clienthandle, gwl_wndproc));
  SetWindowLong(Clienthandle, gwl_wndproc, longint(Fclientinstance));
end;



gde je wallpaper TImage( stretch := false, align := alnone)

Pozdrav!
19.05.2005. u 10:22 

Vdjuric
Vladimir Djuric
Beograd

Član broj: 20863
Poruke: 64
*.dialup.sezampro.yu.

Sajt: www.marettasoftware.com


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme24.05.2005. u 01:29


Ehey... tek sam sinoc video poruku... :)
Probao sam i ovo, medjutim i dalje treperi... :( Da li si to probao na MDI formi ili na obicnoj? Na obicnoj radi kako treba, ali zeza kada je MDI forma u pitanju... :(

Poz & hvala svima na odgovorima :)
24.05.2005. u 01:29 

bondja

Član broj: 10286
Poruke: 135
*.adsl.sezampro.yu.



Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme24.05.2005. u 13:14
@Vdjuric
Probao sam na MDI formi ( FormStyle := fsMDIForm). Ali sam projekat napravio tako sto sam isao na File/New/Other, jezicak Projects i izabrao MDI Application (koristim Delphi 7).
Jos jedna sitnica, slika je BMP formata.... Evo kompletnog koda... : )

Pozdrav!
Prikačeni fajlovi
24.05.2005. u 13:14 

Vdjuric
Vladimir Djuric
Beograd

Član broj: 20863
Poruke: 64
*.ppp-bg.sezampro.yu.

Sajt: www.marettasoftware.com


Profil

icon Re: Potrebna pomoc oko treperenja timage-a razvucenog preko forme25.05.2005. u 16:17
Citat:
bondja: @Vdjuric
Probao sam na MDI formi ( FormStyle := fsMDIForm). Ali sam projekat napravio tako sto sam isao na File/New/Other, jezicak Projects i izabrao MDI Application (koristim Delphi 7).
Jos jedna sitnica, slika je BMP formata.... Evo kompletnog koda... : )

Pozdrav!


Stvarno cool radi... :( i sta sad da radim? kako nateram da to proradi i u mom programu? sve sam stavio kao i u tvom primeru, ali ne radi. sada cu lepo da dodajem jednu po jednu stavku u interfejs ovog tvog primera, mora da ga neka komponenta zeza. :(
pozdrav & hvala na resenju problema
25.05.2005. u 16:17 

[es] :: Pascal / Delphi / Kylix :: Potrebna pomoc oko treperenja timage-a razvucenog preko forme

[ Pregleda: 1482 | Odgovora: 15 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.