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

Stampanje nazovi "generisanih" strana u BCB-u 6!

[es] :: C/C++ programiranje :: Stampanje nazovi "generisanih" strana u BCB-u 6!

[ Pregleda: 2301 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

MAD-MAX
Marko Mitic

Član broj: 351
Poruke: 1060
*.ptt.yu

Jabber: MAD-MAX@jabber.com
ICQ: 65811355


Profil

icon Stampanje nazovi "generisanih" strana u BCB-u 6!22.05.2002. u 23:54 - pre 268 meseci
Problem inace ima veze sa programom za igraonicu. A konkretno ovaj program bi bio na serveru i stampao bi kao neke kupone sa podacima iz baze.

Ovako. Imam u MySQL bazi (koja je inace na serveru) dva polja: password i broj kupona. E sad ja bih hteo program koji ce pritiskom na dugme da odstampa na jednom A4 listu 10 razlicitih kupona. Za finese oko izgleda brinucu kasnije ali za sada samo hocu da na kuponu budu broj i passw. Za pocetak sam hteo da napravim bilo kakav program samo da nesto stampa.

Posto nemam puno iskustva sa C++ GUI programiranjem a jos manje sa stampanjem pogledao sam u helpu i malo u knjizi VC++ 6 Biblija. Sledeci kod mi se ucinio zanimljivim ali na zalost nije radio. ZASTO? Ovakav kod sam nasao u knjizi a prebacio sam ga u funkciju za dugme: (bez, naravno, void ... :)))

void Print2Page()
{
HDC hDC;
DOCINFO di;

hDC = CreateDC("WINSPOOL", "HP Laser Printer", NULL, NULL);

memset(&di, sizeof(DOCINFO));
di.cbSize = sizeof(DOCINFO);
di.lpszDocName = "Sample Document";

if(StartDoc(hDC,&di) != SP_ERROR)
{
StartPage(hDC);
TextOut(hDC, 10, 10, "Ovo je na prvoj strani", 18);
EndPage(hDC);

StartPage(hDC);
TextOut(hDC, 10, 10, "Ovo je na drugoj strani", 18);
EndPage(hDC);

EndDoc(hDC);
}
DeleteDC(hDC);
}

Sta tu ne valja?

Greska je sledeca: [C++ Error] Unit1.cpp(26): E2193 Too few parameters in call to 'memset(void *,int,unsigned int)'

A ako stavim: memset(&di, 0,sizeof(DOCINFO));
Onda kompajliranje lepo prodje ali kad startujem program nista se ne desava pritiskom da button :)!!!!!!

A ako stavim: memset(&di, sizeof(DOCINFO), 0);
Onda se pjavljuje greska pri pritisku na dugme u modulu GDI32.dll.

Napominjem da je u knjizi bilo bas kako sam napisao s tim sto je umesto sizeof bilo i jeste sizof sto sam, naravno, ja promenio :)))




A ovo je radilo uz jednu button i jednu memo kontrolu:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
TPrinter *Prntr = Printer();
TRect r = Rect(200,200,Prntr->PageWidth - 200,Prntr->PageHeight-200);
Prntr->BeginDoc();
for( int i = 0; i < Memo1->Lines->Count; i++)
Prntr->Canvas->TextOut(200,200 + (i *
Prntr->Canvas->TextHeight(Memo1->Lines->Strings)),
Memo1->Lines->Strings);
Prntr->Canvas->Brush->Color = clBlack;
Prntr->Canvas->FrameRect(r);
Prntr->EndDoc();
}

Nalazio sam jos mnogo drugih primera koji naravno NISU radili osim ovog zadnjeg ali mi se cini da je prvi najpristupacniji jedino je problem sto ne radi.

Pored ovoga bih da pitam/zamolim da l' neko moze da mi kaze kako najlakse da uradim ono sto hocu (naveo sam gore) i jos ako bude i code-a SUPER :)))

Thanks

"If you do what you always did! - You will get what you always got!"
 
Odgovor na temu

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.racasse.se

Sajt: dejan.lekic.org


+2 Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!23.05.2002. u 14:01 - pre 268 meseci
Taj zadnji radi zato jer koristi tehnike koje su ugradjene u Borland C++ Builder i koje provereno rade. Pogledaj Canvas objekat i metode (svaka metoda u BC++B ima sjajan primer kako se koristi) i znaces kako da stampas posle nekoliko sati ucenja.
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

MAD-MAX
Marko Mitic

Član broj: 351
Poruke: 1060
*.ptt.yu

Jabber: MAD-MAX@jabber.com
ICQ: 65811355


Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!23.05.2002. u 15:01 - pre 268 meseci
Mislis da bi sa ovim drugim "primerom" mogao da uradim ono sto zelim? Meni se cini da je ovaj prvi (koristi WinAPI) laksi a i nisi mi odgovorio zasto ne radi.

Puno hvala
"If you do what you always did! - You will get what you always got!"
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!23.05.2002. u 17:05 - pre 268 meseci
Evo, ovde sve imaš (i više nego što ti treba)

http://msdn.microsoft.com/libr...ry/en-us/gdi/prntspol_2ik4.asp
 
Odgovor na temu

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.racasse.se

Sajt: dejan.lekic.org


+2 Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!23.05.2002. u 17:56 - pre 268 meseci
Malo cudno, ali ja tu stranu ne mogu da vidim iz Opere za Linux :) Pitam se samo zasto... ;>
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!23.05.2002. u 18:20 - pre 268 meseci
Hmmm, sa Netscape 6 se vidi...
 
Odgovor na temu

Ivan Tanasic
BGD-SRBIJA

Član broj: 220
Poruke: 965
*.yubc.net

Jabber: Autoexes@jabber.sk
ICQ: 129145438


Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!23.05.2002. u 20:48 - pre 268 meseci
fprintf uvek pali :))) a sobzirom da tekst koji je tebi potreban ne zahteva neko narocito formatiranje u smislu boje/fonta/velicine fprintf radi samo tako posao!!!
Ivan Tanasic - Autoexes

>cd pub
>more beer
 
Odgovor na temu

MAD-MAX
Marko Mitic

Član broj: 351
Poruke: 1060
*.ptt.yu

Jabber: MAD-MAX@jabber.com
ICQ: 65811355


Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!24.05.2002. u 00:13 - pre 268 meseci
Ha. Dragi neces verovati ali sam taj isti, identican, kod nasao, mislim iz BCB-a u Help Win SDK i pogodi sta: NECE.

Thanks anyway. :)

A inace jel moze neki primer za "fprintf"
"If you do what you always did! - You will get what you always got!"
 
Odgovor na temu

Ivan Tanasic
BGD-SRBIJA

Član broj: 220
Poruke: 965
*.yubc.net

Jabber: Autoexes@jabber.sk
ICQ: 129145438


Profil

icon Re: Stampanje nazovi "generisanih" strana u BCB-u 6!24.05.2002. u 20:15 - pre 268 meseci
Pa vidi, fprintf je isto sto i printf samo sto mu kao argument jos turis i stdprt da bi on to sto treba poslo na printer a ne na stdout (ekran).

Za vise informacija http://www.cplusplus.com/ref/cstdio/fprintf.html

Pozdrav, autoexes
Ivan Tanasic - Autoexes

>cd pub
>more beer
 
Odgovor na temu

[es] :: C/C++ programiranje :: Stampanje nazovi "generisanih" strana u BCB-u 6!

[ Pregleda: 2301 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

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