Kontrol Tinta

Platform TABLET PC menyediakan dua kontrol, InkEdit dan InkPicture, yang memungkinkan Anda untuk dengan mudah menambahkan tinta dan pengenalan tulisan tangan ke aplikasi TABLET PC. Kontrol InkEdit telah mengelola versi ActiveX , dan Win32, sementara InkPicture hanya memiliki versi InkPicture dan ActiveX terkelola.

Perbedaan utama antara kontrol adalah bagaimana data disimpan. Kontrol InkEdit menyimpan tinta sebagai teks secara default, sementara InkPicture menyimpan tinta sebagai tinta.

Kontrol InkEdit ditujukan untuk entri teks melalui pengenalan tulisan tangan. Gambar Tinta ditujukan untuk anotasi (misalnya, menandai slide presentasi atau gambar lainnya).

Dalam kode terkelola, buat kontrol tinta di utas yang sama dengan utas utama untuk formulir. Jika kontrol InkEdit atau InkPicture dibuat di utas yang berbeda, aplikasi Anda mungkin tidak merespons dengan benar.

Anda harus secara eksplisit mengubah model utas menjadi apartemen utas tunggal (STA) sebelum membuat kontrol tinta. Hal ini menyebabkan kontrol dibuat pada utas utama. Anda dapat menggunakan kode C++ Terkelola berikut untuk mengatur model utas secara eksplisit.

Thread::get_CurrentThread()->set_ApartmentState(ApartmentState::STA);

Anda dapat menggunakan kode berikut untuk melakukan hal yang sama di C#.

System.Threading.Thread.CurrentThread.ApartmentState = System.Threading.ApartmentState.STA;

Dalam kode terkelola, untuk menghindari kebocoran memori, Anda harus secara eksplisit memanggil metode Buang pada kontrol PC Tablet apa pun tempat penanganan aktivitas telah dilampirkan sebelum kontrol keluar dari cakupan.

Bagian berikut menjelaskan kontrol tinta dan penggunaan kontrol tinta dalam aplikasi: