Allgemeine Fragen zur PROFAN Programmierung
Views (Heute): 242923 (4359)
  Suchen
 Zurück zur Übersicht
 AutorThema: Druckvorschau
Eike Fremy
Datum:06.06.02 06:52 Antwortenals Email verschicken (eike-fremy@t-online.de) 


Hallo wie kann ich eine druck vorschau machen????


Alexander Schoenfeld
Datum:06.06.02 08:04 Antwortenals Email verschicken (alexander.schoenfeld@chronologic.de) 


Hallo Eike!

Du könntest mit MCLS ein MemoryBitmap anlegen und anschliessend alles mit StartPaint -1, was du normalerweise auf den Drucker ausgeben würdest, in das Bitmap zeichnen und es dann auf den Bildschirm zeichnen.

Mit freundlichem Gruss / kind regards,
Alexander Schoenfeld

Email: alexander.schoenfeld@chronologic.de


Bernd Haase
Datum:06.06.02 14:57 Antwortenals Email verschicken (info@ebs-haase.de) 


... oder rghlist benutzen.

:-)) Bernd


Gerd Telzerow
Datum:06.06.02 21:54 Antwortenals Email verschicken (GTelzerow@T-Online.de) 



...oder mit

SetAutoPaint N

StartPaint H& 'Dialog Fenster

@Create: HScroll
@Create: VScroll

EndPaint (End Paint bitte zusammen)

bei Extra-Wünchen

MFG Gerd


Eike Fremy
Datum:07.06.02 11:03 Antwortenals Email verschicken (eike-fremy@t-online.de) 


Hi Gerd
Haste mal ein beispiel für mich ????


Gerd Telzerow
Datum: 07.06.02 16:40 Antwortenals Email verschicken (GTelzerow@T-Online.de) 


Hi Eike,

ein Beispiel von meinem letzten Projekt!

'Hauptprogramm

'Dialoge und Fenster Mitte
Def @PosX(1) @Int(@Div(@Sub(%MaxX,@%(1)),2))
Def @PosY(1) @Int(@Div(@Sub(%MaxY,@%(1)),2))

declare VorY%[54]
Print "Drucker - Vorschau"
SetAutoPaint 1

'Druck-Dialogs-Vorschau
Proc HinweisVor
Declare t$,n$
Let t$=" Ambulanter-Pflegedienst-Manager 2.1 "
Let n$="© Gerd Telzerow 17.06.2001.......\n\n82343 Pöcking\nStarnberger Str. 5 \n\nTel.: 08157 / 900 597 \nFax: 08157 / 900 598 \n\nGTelzerow@T-Online.de"
@MessageBox(n$,t$,4160)
EndProc

Proc Daten_Druck_Vorschau
Parameters was%
If @Equ(was%,1)
LoadSizedBmp "Logo.bmp",560,VorY%[1]-90,90;0
UseFont "Bangle",30,0,0,0,0
TextColor @RGB(255,0,0),-1
DrawText 80,VorY%[2],"AMBULANTER PFLEGEDIENST"
'und....
ElseIf @Equ(was%,2)
UseFont "Times New Roman",14,0,1,0,0
DrawText 100,VorY%[41],"Bei Rückfragen"
DrawText 340,VorY%[41],"Überweisung unter Angabe der Rechnungsnummer"
DrawText 340,VorY%[42],"gemäß RV § 132 SGB V § 5 Abs. 3 erbeten"
UseFont "Times New Roman",12,0,1,0,0
DrawText 100,VorY%[43],"Telefon:"
UseFont "Times New Roman",12,0,0,0,0
DrawText 140,VorY%[43],"Gerd Telzerow"
DrawText 140,VorY%[44],"......"
UseFont "Times New Roman",12,0,1,0,0
DrawText 340,VorY%[43],"Bankverbindung:"
'und....
Endif
Endproc

Proc VorschauYDaten
Let VorY%[1]=65
Let VorY%[2]=60
Let VorY%[3]=90
Let VorY%[4]=95
Let VorY%[5]=115
Let VorY%[6]=120
Let VorY%[7]=138
Let VorY%[8]=160
Let VorY%[9]=163
Let VorY%[10]=170
Let VorY%[11]=200
Let VorY%[12]=200
Let VorY%[13]=215
Let VorY%[14]=215
Let VorY%[15]=220
Let VorY%[16]=250
Let VorY%[17]=269
Let VorY%[18]=290
Let VorY%[19]=320
Let VorY%[20]=320
Let VorY%[21]=320
Let VorY%[22]=320
Let VorY%[23]=400
Let VorY%[24]=360
Let VorY%[25]=360
Let VorY%[26]=385
Let VorY%[27]=400
Let VorY%[28]=420
Let VorY%[29]=435
Let VorY%[30]=390
Let VorY%[31]=390
Let VorY%[32]=405
Let VorY%[33]=405
Let VorY%[34]=420
Let VorY%[35]=420
Let VorY%[36]=435
Let VorY%[37]=435
Let VorY%[39]=500
Let VorY%[40]=60
Let VorY%[38]=90
Let VorY%[41]=360
Let VorY%[42]=372
Let VorY%[43]=395
Let VorY%[44]=410
Let VorY%[45]=415
Let VorY%[46]=435
Let VorY%[47]=490
Let VorY%[48]=510
Let VorY%[49]=521
Let VorY%[50]=532
Let VorY%[51]=544
Let VorY%[52]=500
Let VorY%[53]=516
Let VorY%[54]=530
EndIf
Endproc

Proc Rahmen
UseBrush 1,@RGB(255,255,255)
UsePen 5,1,@RGB(255,255,255)
Rectangle 19,42 - 757,561
Endproc

Proc NeuZeichnen
If @Equ(@GetScrollPos(VLeiste%),0)
Rahmen
Daten_Druck_Vorschau 1'Die Daten Laden
ElseIf @Equ(@GetScrollPos(VLeiste%),1)
Rahmen
Daten_Druck_Vorschau 2'Die Daten Laden
Endif
Endproc

proc dialogVorschau
Parameters VorLeistung$
declare VSchauende%
declare VSchaudlg%
declare VLeiste%
declare Button1&,Button2&,Button3&

let VSchaudlg%=@createdialog(%Hwnd," Dialog-Druck-Vorschau",@PosX(800),@PosY(600),800,600)

StartPaint VSchaudlg%

UseFont "Arial",20,0,1,1,0
TextColor @RGB(58,110,165),-1

DrawText 30,8,@Add$("Abrechnung des Patient: ",VorLeistung$)

Let Button3&=@CreateDefButton(VSchaudlg%,"Ende",700,1,37,36)
'SetIcon Button3&,"Icon1.ico",0
Let Button2&=@CreateDefButton(VSchaudlg%,"Dr",660,1,37,36)
'SetIcon Button2&,"Drucker.ICO",0
Let Button1&=@CreateDefButton(VSchaudlg%,"Info",620,1,37,36)
'SetIcon Button1&,"Info.ICO",0

UseBrush 1,@RGB(255,255,255)
UsePen 5,1,@RGB(255,255,255)

@CreateGroupBox(VSchaudlg%,"",16,31,744,532)
Rectangle 19,42 - 757,561

VorschauYDaten

Daten_Druck_Vorschau 1'Die Daten Laden

let VLeiste%=@createvscroll(VSchaudlg%,"",760,36,18,526)

SetScrollRange VLeiste%,0,1

let VSchauende% = 0
whilenot VSchauende%
waitinput

If %wmPaint
NeuZeichnen
Endif

if @equ(%key,2)
let VSchauende% = 1
elseif @GetFocus(Button3&)
Let VSchauende%=1
elseif @GetFocus(Button2&)

elseif @GetFocus(Button1&)
HinweisVor
elseif @getfocus(VLeiste%)
If @Equ(@GetScrollPos(VLeiste%),0)
Rahmen
Daten_Druck_Vorschau 1'Die Daten Laden
ElseIf @Equ(@GetScrollPos(VLeiste%),1)
Rahmen
Daten_Druck_Vorschau 2'Die Daten Laden
Endif
endif
wend
EndPaint
@destroywindow(VSchaudlg%)
endproc

dialogVorschau "Meier Heinrich"

End

MFG Gerd


 Zurück zur Übersicht