投稿時間:2004/10/13(Wed) 16:31 投稿者名:もじもじ(初心者)
Eメール:
URL :
タイトル:mschart.editcopyでエラー
VB6.0 SP6 , winXP Home SP1
mschartで描画したグラフをeditcopyメソッドでクリップボードに コピーするアプリケーションを作りました。データ件数が少ない ときには問題ないのですが、データ件数が増えるとeditcopyメソ ッドの部分で下記エラーが出ることがあります。
********エラーの内容********
実行時エラー'-2147417848 (80010108)': 'EditCopy'メソッドは失敗しました: '_DMSChart' オブジェクト
********エラーの内容********
この時、他アプリケーションからクリップボードが使えない状態に なります。私のプログラムがクリップボードを占有したままになっ ているようです。私のプログラムを終了するとクリップボードが使 えるようになります。 このエラーを回避できるようなアイデアを教えていただけませんで しょうか。よろしくお願いいたします。
現象を再現できる最小コードです。新規フォームにmschartと commandButtonを貼り付けます。実行できたらcommand1ボタンを連続 してクリックします。
Option Explicit
'Private Declare Function OpenClipboard Lib "user32" _ '(ByVal hwnd As Long) As Long ' 'Private Declare Function EmptyClipboard Lib "user32" _ '() As Long ' 'Private Declare Function CloseClipboard Lib "user32" _ '() As Long
Private Sub Form_Load()
MSChart1.chartType = VtChChartType2dLine With MSChart1.DataGrid .RowLabelCount = 2 .ColumnLabelCount = 2 .RowCount = 1000 .ColumnCount = 14 .SetSize .RowLabelCount, .ColumnLabelCount, _ .RowCount, .ColumnCount .RandomDataFill End With End Sub
Private Sub Command1_Click() ' Dim rtn As Longs ' rtn = OpenClipboard(0) ' rtn = EmptyClipboard ' rtn = CloseClipboard
With MSChart1 .EditCopy End With End Sub
|