{***************************************************************************} { } { DelphiUIAutomation } { } { Copyright 2015 JHC Systems Limited } { } {***************************************************************************} { } { Licensed under the Apache License, Version 2.0 (the "License"); } { you may not use this file except in compliance with the License. } { You may obtain a copy of the License at } { } { http://www.apache.org/licenses/LICENSE-2.0 } { } { Unless required by applicable law or agreed to in writing, software } { distributed under the License is distributed on an "AS IS" BASIS, } { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } { See the License for the specific language governing permissions and } { limitations under the License. } { } {***************************************************************************} unit DelphiUIAutomation.Clipboard; interface type TAutomationClipboard = class strict private public /// /// Gets the clipboard contents as text (if it was a grid) /// class function GridText : TArray; /// /// Gets the number of rows in the clipboard, assuming it is a 'table' /// class function RowCount : integer; end; implementation uses sysutils, clipbrd; { TAutomationClipboard } class function TAutomationClipboard.GridText: TArray; var Lines : TArray; begin Lines := clipboard.AsText.Split([#$D]); result := Lines; end; class function TAutomationClipboard.RowCount: integer; var Lines : TArray; begin Lines := clipboard.AsText.Split([#$D]); result := length(Lines); end; (* for line in lines do begin if line[1] = #$A then f := copy(line, 2, length(line) -1) else f := line; fields := f.Split([#9]); for field in fields do begin X := field; end; end; *) end.