Iframe

Sem vkládejte editovatelné kusy kódu a tutoriály.
Post Reply
User avatar
hráč
Posts: 225
Joined: August 6, 2011, 8:52 am
Facebook: http://facebook.com/
Contact:

Iframe

Post by hráč »

Ahoj udělal sem takové základní api pro iframe, iframe je okénko na webu ve kterém se dá scrollovat =)
Nebo také div s stylem "overflow:visible"

GML je zde: iframe.gml

Ukázka jak nato..
Create:

Code: Select all

ifram_w = 450;
ifram_h = 200;
ifram = iframe_create(ifram_w, ifram_h, true, 3, 120, 120);
iframe_create :
arg0: šířka
arg1: výška
arg2: debug mode
arg3: scrollball
- 0 : skryto
- 1 : horizontlni
- 2 : vertikální
- 3 : všechny
arg4: pozice x (Pouze pro DEBUG)
arg5: pozice y (Pouze pro DEBUG)

Draw:

Code: Select all

draw_rectangle_color_iframe(ifram, 0, 0, ifram_w, ifram_h, c_white, false);
draw_rectangle_iframe(ifram, 0, 0, ifram_w+50, ifram_h, true);
draw_text_iframe(ifram, 5, 5, "Lorem ipsum dolor");
draw_text_iframe(ifram, 5, ifram_h + 5, "Lorem ipsum dolor");
draw_sprite_iframe(ifram, sprite3, 0, 80, ifram_h + 75);

draw_iframe(ifram,120,120);
draw_iframe :
arg0: id iframu
arg1: pozice x
arg2: pozice y

Ostatní funkce se používají stejně jako klasické akurát jako první argument je id iframu

Ukázka:
Screenshot 2014-08-31 20.23.43.png
Screenshot 2014-08-31 20.23.43.png (5.46 KiB) Viewed 4505 times
Není to celé chci přidat i scrollbar =)
Neposedný liškovlk!
Image
D-Sheep
Posts: 768
Joined: September 7, 2011, 10:17 pm
Facebook: http://facebook.com/sheepdave
Location: Praha, CZE
Contact:

Re: Iframe

Post by D-Sheep »

Líbí se mi to, že scrollbary se zobrazují automaticky, uvnitř a dokážou svým objevením prakticky zmenšit vykreslovací oblast a přesto zachovat scrollování až ke krajům.
Na druhou stranu se mi nelíbí, že v kódu není ani kousek komentáře nebo vysvětlení, co jak funguje.
User avatar
hráč
Posts: 225
Joined: August 6, 2011, 8:52 am
Facebook: http://facebook.com/
Contact:

Re: Iframe

Post by hráč »

Tak vysvětlení když to chceš no tak tady to máš

iframe_create
vytvoří iframe a vrátí id
draw_iframe
vykreslí iframe

nic víc tam není třeba popisovat :) nedávám to od toho aby si to každý změnil dávám to proto kdyby někdo něco takového potřeboval ... ale nezakazuji ani aby si to někdo měnil :)

A vysvětlení tam je popis argumentu v funkci iframe_create ;)
Neposedný liškovlk!
Image
User avatar
hráč
Posts: 225
Joined: August 6, 2011, 8:52 am
Facebook: http://facebook.com/
Contact:

Re: Iframe

Post by hráč »

Nová verze!

iframe.gml

Přidány scrollbary! =)
Zatím ale fungujou jen pokud tam toho obsahu není zas až moc... takže kdyby měl být scrollbar měnší jak 15 tak se nezobrazí zatím...

EDIT NEW
Nová verze přibyly funkce jako
iframe_scroll_to
posunutí v iframu na určitou pozici
arg0 - ifram id
arg1 - pozice x
arg2 - pozice y

iframe_get_height (iframe_get_width)
vrací velikost iframu
arg0 - ifram id
arg1 -
- true: vrací kompletní velikost
- false: vrací velikost jako vidíte tj. tu co jste nastavily

Ke stažení: http://www58.zippyshare.com/v/63642657/file.html

příklad plinulého autoscrollu nahoru a dolu

Create:

Code: Select all

my_scroll = 0;
my_scro_a = 1;
Draw:

Code: Select all

iframe_scroll_to(ifram, 0, my_scroll);
if(my_scro_a == 1){
    my_scroll+=1;
    if(my_scroll > iframe_get_height(ifram, true) - iframe_get_height(ifram)){ my_scro_a = 0; }
}else{
    my_scroll-=1;
    if(my_scroll < 0){ my_scro_a = 1; }
}
Screenshot 2014-09-01 10.59.37.png
Screenshot 2014-09-01 10.59.37.png (4.76 KiB) Viewed 4486 times
Neposedný liškovlk!
Image
POuser
Posts: 6
Joined: February 18, 2016, 8:15 pm
Facebook: http://facebook.com/

Re: Iframe

Post by POuser »

Zdravim, mohu poprosit o aktualizaci odkazu na gml? Děkuji
User avatar
hráč
Posts: 225
Joined: August 6, 2011, 8:52 am
Facebook: http://facebook.com/
Contact:

Re: Iframe

Post by hráč »

Máš štěstí něco sem v PC ještě našel :3
Ale nevím jaká je to verze o_O

Code: Select all

http://uloz.to/xWaM917U/iframe-gml
Edit: A jo určitě ta poslední.. x)
Neposedný liškovlk!
Image
POuser
Posts: 6
Joined: February 18, 2016, 8:15 pm
Facebook: http://facebook.com/

Re: Iframe

Post by POuser »

Děkuji moc :)
Post Reply