Tekst met opmaak toepassen in Visuele FoxPro-rapporten
In dit artikel wordt beschreven hoe u delen van een veld uit een tabel met opmaak kunt onderstrepen en deze opmaak kunt weergeven in een rapport.
Oorspronkelijke productversie: Visual FoxPro
Origineel KB-nummer: 246088
Samenvatting
Van tijd tot tijd is het handig om opmaakeffecten toe te voegen aan afzonderlijke woorden in Visual FoxPro-rapporten. Dit kan worden bereikt met het ActiveX-besturingselement Rich Text, een algemeen veld en een OLE-gebonden besturingselement in een Visual FoxPro-rapport.
Meer informatie
In dit voorbeeld ziet u hoe u delen van een veld uit een tabel onderstreept en deze opmaak weergeeft in een rapport. U kunt elk mogelijk effect of een combinatie van effecten in Tekst met opmaak toepassen op uw voorbeeld.
Open Visual FoxPro en maak een nieuw rapport.
Voeg een besturingselement Afhankelijk van afbeelding/Active-X toe aan de detailband van het rapport. Stel de eigenschap FIELD in op Dcolor.gcolor.
Sla het rapport op als rtfDemo.
Plak de volgende code in een nieuw programma. Sla het programma op in dezelfde map als het rapport en voer het uit.
CLOSE ALL CLEAR ALL tSafety = SET("safety") &&Store SET status of Safety to a variable SET SAFETY OFF &&Check to see if the Dcolor table exists IF FILE("dcolor.dbf") USE dcolor EXCLUSIVE ELSE CREATE TABLE dcolor (dcolor c(20),gcolor g) &&Create and add records if DColor table doesn't exist INSERT INTO dcolor (dcolor) VALUES ("Red") INSERT INTO dcolor (dcolor) VALUES ("Green") INSERT INTO dcolor (dcolor) VALUES ("Blue") INSERT INTO dcolor (dcolor) VALUES ("Purple") INSERT INTO dcolor (dcolor) VALUES ("Orange") INSERT INTO dcolor (dcolor) VALUES ("Yellow") ENDIF _rtfFile = SYS(3)+".rtf" &&Create a legal file name with a .RTF extension *NOTE: The file must have a .RTF extension to work properly SCAN &&Create a Richtext OLE bound control in the general field of the dColor table SET TEXTMERGE TO &_rtfFile NOSHOW SET TEXTMERGE ON *!!IMPORTANT!! The following richtext formatting line(s) need to be *included as one line in your program. \\{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl {\f0\fnil\fcharset0 Times New Roman; }} \viewkind4\uc1\pard\f0\fs20 The big \ul <<ALLT(dcolor.dcolor)>>\ulnone dog\par} SET TEXTMERGE TO APPEND GENERAL gcolor FROM &_rtfFile CLASS "RICHTEXT.RICHTEXTCTRL.1" ENDSCAN SET SAFETY &tSafety ERASE &_rtfFile REPORT FORM rtfdemo PREVIEW NOCONSOLE USE CLOSE ALL
Wanneer het rapport wordt afgedrukt, wordt de kleur onderstreept in de tekst.
Opmerking
In sommige gevallen ziet het afdrukvoorbeeld van rtf-opgemaakte tekst er niet correct uit. Wanneer de tekenreeks echter wordt afgedrukt, wordt de uitvoer correct opgemaakt.
Tip
Als u een tekenreeks wilt genereren die vergelijkbaar is met de tekenreeks in de bovenstaande code, maakt u een sjabloon voor uw expressie in WordPad (of een andere toepassing waarmee rich text files kunnen worden gemaakt). Onderstreping, kleur en pas andere opmaak toe op de tekst en sla deze vervolgens op in een . RTF-bestand . Open de . RTF-bestand in Kladblok en kopieer/plak de rich text-code in uw Visual FoxPro-programma.
(Voor deze toepassing is het besturingselement RichTX32.OCX vereist. Visual FoxPro 3.0 en 3.0b worden niet geleverd met RichTX32.OCX.)