Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 7 odgovora
  • 2.494 pregleda

Najnovija ↓

Automatsko skrolovanje sadržaja 22.04.2009. u 00:32 · pre 213 meseci #1
Pozdrav gospodo,


Videli ste svi na TV stanicama dok je neka emisija u toku a ispod, na dnu ekrana, prikazuju se vesti tako što se iste skroluju sa desna na levo.
Imam formu širine na primer 800px. Imam string od 1500 znakova, lupam. Želim da se taj tekst skroluje po širini forme, poput gornjeg primera. Najlakše bi bilo staviti tekst u label i label pomerati na levo pa ga, kad dođe do kraja, vratiti na desnu stranu. Međutim, želeo bih da kada zadnja vest prolazi po ekranu, prva kreće odmah za njom.

Da li imate neki predlog kako ovo na lep način rešiti?

Zahvaljujem na pažnjici :)
Potpis
Expert Opinions - Niche Articles
Re: Automatsko skrolovanje sadržaja 22.04.2009. u 09:48 · pre 213 meseci #3
@toxi_programer
Sve zavisi od kvaliteta skrolujuceg texta koji zahtevas.
Ako ces glatko skrolovanje texta bez treperenja i skakutanja slova onda bolje koristi managed DirectX.
Potpis
Viva lollapalooza
Re: Automatsko skrolovanje sadržaja 22.04.2009. u 10:06 · pre 213 meseci #4
Eh davno to bese, na Amiga racunarima, kada sam se zanimao za skrolove. Uvek je za glatak i brz skrol bilo potrebno koristiti posebne tehnike i biblioteke.

Od standardnih Windows nacina, najbolje sto sam uspeo da pronadjem je kada se neki Windows objekat (slika, tekst, ...) smesti unutar ScrollBox-a i ne skroluje sadrzaj nego taj scroll box (horizontalni/vertikalni bar) i to sa ScrollBox::ScrollBy() pozivom.

Sto se tice vezivanja pocetka s krajem, to mozes ostvariti trikom, posto ti je poznata sirina prozora.

Dakle:
1. dodas odredjeni deo pocetka na kraj teksta
2. cekas odredjeni polozaj skrola kada naglo inkrementiras x poziciju.





Re: Automatsko skrolovanje sadržaja 22.04.2009. u 10:17 · pre 213 meseci #5
Citat:
X Files: Eh davno to bese, na Amiga racunarima, kada sam se zanimao za skrolove. Uvek je za glatak i brz skrol bilo potrebno koristiti posebne tehnike i biblioteke.

U pravu si 100% . Amiga rulezzz!!! Secam se toga , pa se danas jos vise nerviram da posle svih napucanih CPU-a i GPU-a
nisu u stanju da naprave to da radi bez problema a tolike silne 3D igre sa efektima texturama itd ...
Ovo sa DirectX-om sam ja probao (doduse u c++) http://www.elitesecurity.org/t...-IDDXFont-DrawText-memory-leak
i to na kraju i dalje ne radi bas najbolje zbog curenja memorije.
Probao sam i open-source FTGL bibliotekui sa openGL-om ali su performanse
skrolujuceg texta dosta losije od directx-a.


Potpis
Viva lollapalooza
Re: Automatsko skrolovanje sadržaja 22.04.2009. u 11:18 · pre 213 meseci #6
Da slazem se :) Neobicno je da je pomeranje teksta za jedno mesto (ili piksel, ako je to moglo) ulevo standardnim nacinima u nekoj petlji, podjednako brzo radilo i na masini sa 1MHz (ORAO 102), i na masini sa nesto vise od 7MHz (Amiga), i sada sa masinama koje frekvenziju procesora mere u GHz.

Prosto, OS-ovi su postali isuvise slozeni i zahtevni, pa je parce vremena koje se dodeljuje za neki pojedinacni posao (npr, repozicioniranje objekta) isuvise kratko. Zato ce se za efikasno manipulisanje grafikom jos dugo koristiti posebne biblioteke i tehnike.

Amiga je doduse imala poseban cip za grafiku koji je omogucavao autonomiju po tom pitanju.

Re: Automatsko skrolovanje sadržaja 22.04.2009. u 11:36 · pre 213 meseci #7
Prvo da se zahvalim svima na odgovorima.

Mene je najviše zainteresovalo gotovo rešenje koje je linkovao @deerbeer. To je link ka primeru kako koristiti izvesnu MarqueeLabel kontrolu, međutim nema ponuđeno preuzimanje te kontrole.
Tražio sam na internetu ali na svakom download sajtu javlja da nema ispravnog linka za download. Ni na sajtu autora nisam mogao da nađem.

Da li neko može pomoći u nalaženju te "MarqueeLabel" kontrole?
Potpis
Expert Opinions - Niche Articles
Re: Automatsko skrolovanje sadržaja 22.04.2009. u 12:19 · pre 213 meseci #8
@toxi_programer
Pa imas gotov kod sa ovog linka sto je okacio @Igor Gajic.
Samo kreiraj jednu User Controlu u vs-u i copy/paste koda
U principu nemas tu neke velike muke od programiranja .
Sve sto ti treba je jedan Timer i funkcije DrawString i MeasureString ...
inkrementujes poziciju za recimo 1 px u jednom timer intervalu.
Tada ces imati glatko kretanje skrol texta, a timer interval ti sluzi za njegovu brzinu ...
Na kraju ispitujes poziciju texta sa njegovom duzinom da bi vracao text na pocetak
...ako je manja od Form.Left pozicioniras text na Form.Right.
Eventualno ti za ovo treba jedan odvojeni background thread da ne bi blokirao glavni ...


Ovde imas dosta linkova na tu temu :
http://www.dottostring.com/tag...-ticker-message-labels-smooth/
http://www.codeproject.com/KB/edit/dougscrollingtextctrl.aspx
http://www.codeproject.com/KB/miscctrl/csmarquee.aspx
Potpis
Viva lollapalooza
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme