Objekti
Objekti
U ovom poglavlju je opisan rad sa objektima. Primeri rada sa objektima možete pogledati u Korisničkom priručniku za Datalab PANTHEON 5.5.
Osnove rada sa objektima
Ispis je sastavljen iz objekata, koji su namenjeni prikazivanju teksta i grafike. Objekti su bendovi, strane i sam objekat.
Osnovni rad predstavlja označavanje tj. izbor objekta, brisanje objekta, pomeranje objekta, menjanje veličine objekta i postavljanje novog objekta.
Izbor objekta
Ako želimo pomerati objekat, menjati veličinu tj. osobinu, moramo ga prvo izabrati. Objekat izaberemo tako, što mišem kliknemo na njega. Objekat dobija uglove, što znači, da je trenutno izabran. Više objekata u isto vreme izaberemo tako, što držimo taster Shift i kliknemo na objekte. Više objekata možemo izabrati isto tako što držimo taster Ctrl i pritisnemo i držimo levi taster miša. Mišem povlačimo po radnoj površini. Prikaže se tačkasti pravougaonik. Izabrani su svi objekti, koji su u celosti ili delimično u tom pravougaoniku. Kad smo izabrali željene objekte, pustimo taster sa miša.
Brisanje objekta
Objekat brišemo tako, da ga izaberemo i pritisnemo taster Delete.
Pomeranje objekta
Ako želimo pomerati objekat, mišem se postavimo na njega. Pokazivač dobije oblik ruke. Pritisnemo i držimo levi taster miša i pomeramo se mišem na novu lokaciju. Levi taster spustimo i objekat ostane na istom mestu. U slučaju, da pomeramo objekat, koji je na njega povezan drugi, pomeramo i njega.
Menjanje veličine objekta
Prvo objekat označimo. Zatim se postavimo na ugao ili na centar ivice objekta, gde pokazivač miša promeni oblik. Pokazivač miša se promeni u linuju sa strelicama na oba kraja. Pritisnemo i držimo levi taster miša i povlačimo mišem u željeni smer.
Sakrivanje objekata
Objekte sakrijemo tako, što u priručnom meniju sakrijemo oznaku kod osobine Visible. Ako takvo podešavanje ima i bend, sakriju se svi objekti na njemu.
Postavljanje novog objekta
Ako želimo nov objekat postaviti na ispis, prvo u alatnom redu sa objektima kliknemo na ikonicu za izabranu vrstu objekta. Mišem pomeramo iznad radne površine i kliknemo na mesto, gde ga želimo postaviti. Postupak možemo pogledati u nastavku – nakon kreiranja novog ispisa po meri.
Postavljanje mreže za raspoređivanje objekata
Kad pomeramo objekte na ispisu, teško ih možemo uskladiti, jer je pomeranje objekata po obrascu po određenoj formi. Zato možemo postaviti mrežu, koja omogućava pomeranje po određenim koracima. Osobine mreže podesimo u postavkama formatera. Da ih uključimo ili isključimo, možemo i u standardnom alatnom redu klikom na taster
. Klikom na taster
omogućimo da se objekti automatski prikače na mrežu.
Pogledaj primer osnovnog rada sa objektima.
Dopunjavanje teksta i oblikovanje objekata
Dopunjavanje teksta
Dopunjavanje teksta je obično u tekstualnim poljima, gde možemo dodavati tekst i po sistemskih poljima (što možemo pogledati u nastavku).
U našem slučaju ćemo tekst u polju »Radnici« zameniti sa novim »Ispis radnika i njihovih adresa«.
To uradimo dvoklikom na objekat. Stari tekst zamenimo novim, tako što izbrišemo stari tekst i upišemo novi.

Preko tastera OK u prozoru Memo novi tekst ga potvrdimo. Po potrebi polje sa novim tekstom raširimo.
Alatni red za oblikovanje objekata
Objekat koji je namenjen za tekst, možemo oblikovati tekst, tako što prvo izaberemo objekat, onda pomoću tastera u alatnom redu odredimo oblik teksta.

Ikona |
Naziv |
Opis |
 |
Font |
Omogućava izbor fonta padajućeg menija. |
 |
Veličina fonta |
Omogućava izbor veličine fonta padajućeg menija. |
 |
Bold-podebljani font |
Omogućava izbor podebljanja fonta. |
 |
Italic |
Omogućava izbor iskošenog fonta. |
 |
Underline font |
Omogućava izbor podvučenog fonta. |
 |
Osobine fonta |
Otvara prozor sa podešavanje fonta. |
 |
Boja fonta |
Otvara meni, u kojem izaberemo boju fonta. Boje se na crno belim štampačima štampaju u nijansama sive boje. |
 |
Poravnanje levo |
Omogućava poravnanje teksta na levu ivicu teksta. |
 |
Poravnanje na centar po širini |
Omogućava poravnanje teksta po centru objekta teksta. |
 |
Poravnanje desno |
Omogućava poravnanje teksta na desnu ivicu objekta teksta. |
 |
Poravnanje gore |
Omogućava poravnanje teksta po gornjoj ivici objekta teksta. |
 |
Poravnanje centra po visini |
Omogućava poravnanje teksta po visini u centar objekta teksta. |
 |
Poravnanje dole |
Omogućava poravnanje teksta po donjoj ivici objekta teksta. |
Prepis oblikovanja sa jednog na drugi objekat
Ako želimo preneti oblikovanje objekta (poravnanje, boja fonta, font...) sa jednog objekta na drugi, prvo označimo objekat, s kojeg ćemo preneti osobine. Zatim pritisnemo ikonu
u alatnom redu sa objektima tako, da dobijemo oblik četke. Onda kliknemo na objekat, čiji oblik želimo da promenimo. Kada završimo, kliknemo na strelicu na vrhu alatnog reda.
Sakrivanje objekata
Objekte sakrijemo tako, da im u priručnom meniju sakrijemo oznaku kod osobine Visible. Ako ima tako podešen bend, sakrijemo i sve objekte na njemu.

Pogledaj primer sakrivanja objekata u Korisničkom priručniku!
Brisanje objekata
Objekte na ispisima možemo da brišemo. Medjutim neki objekti imaju i programski kod na ispisu, koji određuje njihove osobine. Ako izbrišemo takab objekat, moramo obrisati i programske šifre, koji se odnose na objekat. Ako takav objekat prenesemo u drugi bend, moramo preneti i pripadajuću šifru. U suprotnom slučaju se pojavi prozor sa objašnjenjem o grešci.
Menjanje osobine objekta
Do osobina objekata pristupamo tako, što objekat prethodno označimo. U meniju View izaberemo upit Toolbars | Object Inspector. U prozoru, koji se pojavi, možemo odrediti osobine ograničene u donjim tabelama.
Značajna osobina objekata unutar benda, koju još možemo postaviti u kontroleru je objekat Align.
Pre svakog pomeranja objekta je preporučljivo, da u tom objektu pomoću kontrolera objekta promenimo osobinu Align na baNone, na kraju opet promenimo po svojoj potrebi.
Većina objekata na sistemskim ispisima ima osobinu Align različitu od baNone, što znači, da su povezane ili na ivici benda ili jedna na drugu.
Vrednost |
Opis |
baNone |
Objekat nije poravnat. |
baLeft |
Objekat je poravnat levo. |
baRight |
Objekat je poravnat desno. |
baWidth |
Objekat je poravnat levo i desno. |
baCenter |
Objekat je poravnat na centar benda. |
baBottom |
Objekat je poravnat na donju ivicu benda. |
baClient |
Objekat je poravnat preko celog benda. |
Druge značajne osobine
Za tekst su:
Osobina |
Opis |
GapX |
Određuje odstupanje teksta od leve i desne ivice objekta. |
GapY |
Određuje odstupanje teksta od gornje i donje ivice objekta. |
LineSpacing |
Određuje razmak između redova. |
AutoWidth |
Određuje, da li se širina objekta automatski promeni. U tabelama ta podešavanja moraju biti isključena. |
WordWrap |
Određuje, da li će se duži tekst podeliti u novi red. Ako je osobina AutoWidth uključena, ta osobina nema smisla. |
Oblikovanje okvira

Opis tastera s leva ka desno (u donjoj tabeli):
Naziv |
Opis |
Gornja linija |
Prikaže/sakrije gornju liniju okvira. |
Donja linija |
Prikaže/sakrije donju liniju okvira. |
Leva linija |
Prikaže/sakrije levu liniju okvira. |
Desna linija |
Prikaže/sakrije desnu liniju okvira. |
Sve linije |
Prikaže sve linije okvira. |
Bez linija |
Sakrije sve linije okvira. |
Stil linije |
Omogućava izbor stila linije. Za svaki objekat možemo izabrati samo jednu vrstu linije. |
Vrste objekata
Svi elementi koji se postavljaju na ispis, se imenuju objektima. Objekata je više vrste, bez obzira na vrstu podataka, koje ih prikazuju: za tekst, za sliku, za linijski kod... Objekti si i bendovi, strana i ceo ispis. Objekti mogu sadržati jedne druge, da budu povezani između sebe ili da bude svaki za sebe. Svaki objekat ima svoje osobine, koje ih menjamo pomoću brzih tastera, priručnih menija ili u kontroleru objekata.
Alatni red za postavljanje objekata nalazimo na levoj strani prozora oblikovanja ispisa. Karakteristike su opisane dole.

Tasteri opisani od gore na dole:
Naziv |
Opis |
Bend |
Omogućava prikaz vrednosti na različitim delima ispisa. |
Tekst |
Prikaže neoblikovani tekst. |
Obogaćeni tekst |
Prikaže tekst, oblikovan u formatu RTF. |
Slika |
Prikaže sliku. |
Grafički objekat |
Otvori meni, iz kojeg izaberemo prikaz različitih linija i karaktera. |
Sistemski tekst |
Prikaže sistemske podatke i agregatne vrednosti. |
Linijski kod |
Prikaže podatke u obliku linijskog koda. |
Postavke osobina sa kontrolerom objekata
Sve osobine objekata možemo postaviti u kontroleru objekata, kojeg prikažemo tj sakrijemo u meniju View | Toolbars | Object Inspector. Skraćenica sa tasterom je F11.

Prozor ima dva panela: Properties (osobine) i Events (događaji). Na levoj strani su osobine ili događaji, na desnoj strani njihove vrednosti. U donjem delu prozora su na engleskom kratki opisi određenih osobina. I kontroler objekata je za svaku vrstu objekta drugačiji.
Vrednost True u kontroleru objekata odgovara prikazanoj kukici u priručnom meniju i znači da je osobina »uključena«, vrednost False odgovara sakrivenoj kukici i znači da je osobina »isključena«.
Osobina grafičkih objekata
Grafički objekti su objekti, namenjeni prikazu slika, karaktera, linija i bar koda. Najznačajniji je objekat, namenjen prikazu slika. Njegove najvažnije osobine su:
Lastnost |
Opis |
AutoSize |
Određuje da li se slika rasteže preko celog objekta. |
Center |
Određuje da li se slika prikazuje u centru objekta ili u gornjem levom uglu objekta. |
KeepAspectRatio |
Određuje da li se zadržava izvorno odstojanje visine i širine slike. |
Stretched |
Određuje da li se slika rasteže preko selog objekta. |
Osobine objekata za tekst
Objekat, kojeg najviše koristimo za prikazivanje teksta, je memo
. Spolja upisujemo jedan ili više redova teksta. Njegove najvažnije osobine su:
Text |
Text je najvažnija osobina objekta, u kojoj definišemo tekst ili izraz. Do njega dolazimo dvoklikom na objekat ili sa izborom osobine Memo u kontroleru objekata ili sa izborom menija Edit u priručnom meniju. |
GapX |
Određuje odstupanje teksta od leve i desne ivice objekta. |
GapY |
Određuje odstupanje teksta od gornje i donje ivice objekta. |
LineSpacing |
Određuje razmak između redova teksta. |
Rotation |
Određuje smer ispisivanja teksta. 0 - vodoravno, 90 – nagore... Možemo ispisivati i ukoso. |
AutoWidth |
Određuje da li se objekat prilagođava širini u odnosu na dužinu teksta. U tabelama ta podešavanja moraju biti isključena. |
WordWrap |
Određuje da li će se duži tekst podeliti u novi red. Ako je osobina AutoWidth uključena, nema smisla. |
StretchMode |
Određuje kako objekat se prilagodi visini u odnosu na dužinu teksta. Na raspolaganju su vrednosti: smDontStretched – visina se na menja, smActualHeight – visina se prilagodi visini teksta ili slike, smMaxHeight – visina se prilagodi visini bendu.
|
DisplayFormat |
Određuje format podatka u objektu (tekst, broj, datum/ vreme). |
Font |
Određuje podešavanje slova, koja su slična kao u editoru teksta. |
Color |
Određuje podešavanje boja pozadine. Specijalna je providna (transparentna) boja clNone. |
HideZeros |
Određuje da li se ispisuje vrednost nula. Ovo podešavanje je preporučljivo imati uključeno kod datuma. |
AllowExpression |
Omogućava ispisivanje izraza. |
AllowHTMLTags |
Omogućava oblikovanje teksta sa oznakama HTML. Na raspolaganju su oznake <b>, <i>, <u>, <sub>, <sup> i <font color>. Veličine i vrste slova ne moramo menjati. |
Za zahtevnije oblikovanje teksta koristimo objekat RichText (obogaćeni tekst)
.
Formatiranje podataka u objektu
Za formatiranje ispisa u tekstualnim objektima se koristi osobina DisplayFormat. Preuzimamo je tako, što objekat izaberemo još i preko desnog tastera miša i izaberemo tu osobinu. Otvori nam se prozor kao na slici.

Na raspolaganju su sledeće vrste formata:
Ovde izaberemo vrstu podataka (podosobinu Kind) i njihov format (podosobinu FormatStr). Možemo koristiti tako uslove formata iz uređivača pregleda Excel kao i one iz programskog jezika C.
Podosobine možemo odrediti i u kontroleru objekata.

Ako zapišemo datum u tekstualnom formatu, ispiše se u takvom obliku, kao što je određeno u podešavanjima Windows okruženja.
Za formatiranje možemo koristiti one funkcije, koje zapisujemo u kodu. Za formatiranje broja na primer koristimo funkciju FormatFloat.
Donji izraz ispisuje ceo broj i njegove prve dve decimale:
[FormatFloat('#0', Int(n)]
[FormatFloat('00', Round(100 * Frac(n))))]
Formatiranje podataka je moguće i unutar izraza (inline formatting), kao što je prikazano u donjem primeru
Danas je [NOW #d dddd], [NOW #d d.m.yyyy], sati je [NOW #d hh.mm.ss].
Uslovi formata ne utiču na format podataka, koji se upisuju u programski kod na ispisu ili na kodu u programu.
Neki korisnički formati:
Broj
Format |
Primer ispisa |
#0.00 |
1234,56 |
#,##0.00 |
1.234,56 |
#0 |
1235 |
Datum i vreme
Format |
Primer ispisa |
dd.mm.yyyy |
05.06.2008 |
d.m.yy |
5.6.08 |
dd. mmm yyyy |
05. jun 2008 |
dd. mmmm yyyy |
05. jun 2008 |
ddd |
Čet |
dddd |
Četrtak |
hh:mm |
08:07 |
hh:mm:ss |
08:07:06 |
Kod datumskih polja je potrebno u slučaju, kad je moguće, da podatak nije unesen, da se uključi osobina HideZeros, jer se ispisuju »čudne« vrednosti. Tu osobinu možemo uključiti kod svih datumskih polja.
Posebni objekti
Linijski kod (bar kod)
Otvorimo ispis 02A, koji se nalazi u meniju Podešavanja | Identi, kliknemo na taster Ispisi (Šifarnika) i u prozoru Ispis idenata otvorimo željeni ispis i sačuvamo ga sa novim imenom.
Sa alatnim redom za objekte dodajemo na ispis u bend MasterData objekat sa bar kodom
. Otvori se donji prozor.

Izaberemo vrednosti na slici. Ako ne znamo koji tip koda treba da izaberemo, onda izaberemo tip koda Code128A, jer se može čitati sa barkod skenerom.
Objekat još postavimo na željeno mesto i rastegnemo. Dodelimo mu osobine DataField i DataSet (kao na slici). Uvek izaberemo upit, koji je određen za bend, na kom je objekat, i polje iz istog upita.

Slika identa iz šifarnika idenata
Na ispis damo komponentu za prikaz slike i u prozoru Object Inspector podesimo osobinu DataSet (izvor podataka) na qMSIzpisSif i osobinu DataField (polje podataka) na acPicture.

Uslovno bojenje
Sa uslovnim bojenjem u ispisima možemo naglasiti vrednosti u određenim objektima, naravno pod određenim uslovima, koje mi definišemo.
To napravimo tako, što označimo objekat. Izaberemo taster
u alatnom redu za oblikovanje teksta. Upišemo uslov u polje Condition (kao na slici) i ostale atribute za oblikovanje.

Vidi zanimljive primere u korisničkom priručniku, koji će vam pomoći da razumete područje uslovnog bojenja.
Objekat Engine
Objekat Engine upravlja štampanje ispisa. Sa njegovom upotrebom je moguće štampati ispise veoma specifičnih oblika.

Slika - objekat Engine
Osobine i metode objekta Engine su:
CurX |
Vrati rastojanje pozicije štampanja od leve ivice. |
CurY |
Vrati rastojanje pozicije štampanja od gornje ivice. |
Height |
Vrati visinu strane za štampanje. |
NewPage |
Procedura za početak štampanja za novu stranu. |
FreeSpace |
Vrati visinu preostalog prostora na strani. |
DoublePass |
Ako izaberemo ovo podešavanje, ispis se prvo u memoriji štampa za drugi prolaz. Tako se mogu izračunati količine, koje u prvom prolasku nisu mogle. |
FinalPass |
Određuje da li je pri podešavanju DoublePass ispis kod drugog prolaska. |
Vidite primer objekta Engine u korisničkom priručniku!