0

vb6コード全体をあるマシンから別のマシンにコピーしましたが、別のマシンでコードを実行していると、次のようなエラーが表示されます:コンパイルエラー:プロシージャ宣言が同じ名前のイベントまたはプロシージャの説明と一致しません、これはコード:

Private Sub MKDataGrid1_KeyPress()
    If MKDataGrid1.Col = 0 Or MKDataGrid1.Col = 1 Or MKDataGrid1.Col = 2 Or MKDataGrid1.Col = 3 Then
        MKDataGrid1.AllowUpdate = False
        MsgBox "This field is not to edit. Thnks"
        MKDataGrid1.AllowUpdate = False
        cmdAdd.visible = True
        cmdAdd.SetFocus
        cmdAdd.visible = False
    Else
        MKDataGrid1.AllowUpdate = True
    End If
End Sub
4

2 に答える 2

0

イベントの宣言が台無しになったようです。一般的に言えば、KeyPress イベントはパラメータを取りますKeyAscii As Integer。ルーチンを一時的にリマークしてから、コード ウィンドウのドロップダウンから KeyPress イベントを手動で選択することをお勧めします。次に、VB が挿入した KeyPress に以前のコンテンツをコピーします。

于 2013-05-03T19:25:36.303 に答える
0

このために自分のコンピューターに vb6datagrid.ocx を登録する必要があります。この .ocx を自分のマシンに登録しました。実際には、古いマシンから自分のマシンに新しいコードを再度コピーし、それを実行する前に Project >> components を開きます。 >> デザイナーとそこから必要なコンポーネントを選択し、不要なコンポーネントを削除してから、プロジェクトを実行したため、エラーが発生しましたが、オブジェクトを再度表示すると、オブジェクトが見つからないため、データグリッドを配置し、その後、正常に動作します:)

于 2013-05-04T12:11:54.040 に答える