Как стереть или перезагрузить штрихи в InkPicture в VBA для MS Access? - PullRequest
1 голос
/ 18 октября 2010

Я хотел бы отобразить штрихи, которые я ранее сохранял, на объекте inkPicture в Ms Access (он находится в форме через ActiveX).

Штрихи сохраняются в таблице как объект ole вполе «Штрихи».

Теперь, сделать это один раз достаточно просто (одна строка кода), я могу использовать этот фрагмент без проблем:

Public Sub loadInkImage(MyInkPic As MSINKAUTLib.InkPicture)       

    MyInkPic.Object.Ink.Load (Me.Strokes)       

End Sub

Проблема возникает, когдаЯ хочу сделать это второй раз: чернильница больше не «чистая» и не может загружать обводки.
Простое удаление существующих обводок не работает, так как я могу снова заполнить ту же чернильную картинку?

Спасибо!

1 Ответ

1 голос
/ 19 октября 2010

Вы пытаетесь загрузить два набора штрихов в один и тот же объект или просто заново загрузить новый набор штрихов в InkPicture?Если вы хотите перезагрузить штрихи, вам нужно создать новый объект InkDisp, а затем назначить его для InkPicture.

Public Sub loadInkImage(MyInkPic As MSINKAUTLib.InkPicture)

    Dim newInk As New MSINKAUTLib.InkDisp 'need new object to load new ink

    newInk.Load Me.Strokes 'load in the ink

    Set MyInkPic.Ink = newInk 'set the InkPictures Ink to the new Ink
End Sub

Примечание. В настоящее время у меня нет возможности проверить это, поэтому может потребоваться настройка.1004 *

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...