[Back to WIN-OS2 SWAG index] [Back to Main SWAG index] [Original]
{> How can I copy strings to the clipboard with TPW program?.
This procedure is triggered by a menu or button message:
}
PROCEDURE MyWindow.CopyToClipboard(VAR msg : tmessage);
VAR TextToCopy : array[0..255] of char;
BEGIN
MyEdit.GetText(TextToCopy,SizeOf(Tex tToCopy));
IF NOT CopyText(TextToCopy) then
messagebox(hWindow,'Hasn't worked!','Copy to Clipboard',mb_ok);
END;
This function does the copy.
FUNCTION MyWindow.CopyText(TextString : Pchar) : Boolean;
VAR StringGlobalHandle : THandle;
StringGlobalPtr : PChar;
BEGIN
CopyText := False;
StringGlobalHandle := GlobalAlloc(gmem_Moveable,StrLen(TextString)+1);
IF StringGlobalHandle <> 0 then
BEGIN
StringGlobalPtr := GlobalLock(StringGlobalHandle);
IF StringGlobalPtr <> nil then
BEGIN
StrCopy(StringGlobalPtr,TextString);
GlobalUnlock(StringGlobalHandle);
IF OpenClipboard(hWindow) then
BEGIN
EmptyClipboard;
SetClipboardData(cf_Text,StringGlobalHandle);
CloseClipboard;
CopyText := True;
END
ELSE GlobalFree(StringGlobalHandle);
END
ELSE GlobalFree(StringGlobalHandle);
END;
END;
It's partly taken from the German 1.5 manual. But Borland's program
didn't work, it had bugs (which I have corrected in the program above,
of course).
Basti
E-Mail: 101674.2227@compuserve.com
--
------------------------------------------------------------------
Bastisoft 101674.2227@compuserve.com
Fleestedt, Germany
------------------------------------------------------------------
[Back to WIN-OS2 SWAG index] [Back to Main SWAG index] [Original]