[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
SCREENMARK()
Searches for a string on the screen and marks it with an attribute
------------------------------------------------------------------------------
Syntax
SCREENMARK(<cSearchString>, <cAttr|nAttr>,
<lUpperLower>, [<lAll>],
[<cForwardDelimiter>], [<cTrailingDelimiter>])
--> lFound
Arguments
<cSearchString> Designates the character string to search for in
screen memory.
<cAttr|nAttr> Designates the new color attribute to use in the
sequence located in screen memory. Can be specified as a numeric or in
the manner required under CA-Clipper.
<lUpperLower> Designates whether the function is case sensitive
(.T.) or not (.F.).
<lAll> Designates whether to mark each occurrence (.T.) or only the
first (.F.). The default marks only the first (.F.).
<cForwardDelimiter> This optional parameter designates which
character preceding the <cSearchString> to use as a delimiter. The
default is no delimiter considered.
<cTrailingDelimiter> This optional parameter designates which
character after the <cSearchString> to use as a delimiter. The default
is no delimiter considered.
Returns
SCREENMARK() returns a .T. when it locates the designated string at
least once.
Description
SCREENMARK() searches in the screen memory for a specified character
sequence and emphasizes it with a new attribute. For example, you could
mark words out of MEMOEDIT() in inverse video. When you press a cursor
key, SCREENMARK() is always called in the MEMOEDIT() that controls UDF.
If you are searching for a specific word, then designate <lUpperLower>
as .T.. If case sensitivity is not a major consideration, then
designate <lUpperLower> as .F..
If you want only words and not word fragments, then work with the two
delimiter characters <cForwardDelimiter> and <cTrailingDelimiter>.
Otherwise, the word "LOCK" is marked if the word "BLOCK" occurred.
If you define a space (see Note) for <cForwardDelimiter> as a separator
for the expression, then LOCK is no longer marked with BLOCK. You can
specify all delimiters that could be valid in character string form.
The function allows a targeted expression to begin in the first position
or end at the last position on the screen or window.
Notes
Important! The CA-Clipper Tools uses CHR(255) as the default to
clear the screen, since the character can take on a color attribute on
all screen adapters. Be sure to consider this when you create a
delimiter list.
. The cursor position is not changed with this function.
Examples
. Mark the first word "Clipper" on the screen (exactly) with the
INVERS attribute:
? SCREENMARK("Clipper", "0/7", .T.) // Not found if .F.
. Mark all occurrences of "Clipper" (regardless of the case),
the attribute is white/blue:
? SCREENMARK("Clipper", "W/B", .F., .T.) // Not found if .F.
. Search for all "LOCK" words. Expressions, such as "BLOCK" are
not to be marked. Blanks (when you use the CA-Clipper Tools these
are CHR(255)), slashes, dashes, and brackets, are delimiters:
cListA := CHR(255) + "/("
cListB := CHR(255) + "-)"
? SCREENMARK("LOCK", "W/B", .F., .T., cListA, cListB)
See Also:
Introduction
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson