ile metin yazarken metin girişi için OSX üzerinde bir InputWindow getiriliyor C++ motoru ve UI için Qt ile yazılmış bir metin editörü üzerinde çalışıyorum. Kullanıcının herhangi bir giriş kaynağından (herhangi bir dilin klavyesi) yazmasına izin vermek istiyorum. 1-1 klavye eşlemesi olan dilleri desteklediğim zamana kadar iyiydi (ör. Fransızca/Rusça klavye). Ben metninin oluşturulmasında ve QEvent::InputMethod
Asya laguage
klavye girişlerini yakalama hangi bir eventFilter
benim Qwidget
yüklü vardı Ama bütün özelliklerini desteklemek mümkün değilim (Çince/Japonca gibi) Asya dilleri ile başladı Bu tür bir metin ile metin düzenleme için gerekli olan, böyle bir durumun tipik bir örneği, kullanıcı Japonca (Hiragana IME) ile bir metin yazdığında ve kullanıcının tüm karakterlerin tahmin edilen içeriğin yerine ne ile değiştirileceğini belirlemesine yardımcı olan boşluk tuşuna basıldığında bölünmüş alt çizgidir. dialog.Daha aşağıdaki resim: :
Bir süre uğraştıktan sonra Qt'nin bölünmeler veya dizginin uzunluğu hakkında yeterli bilgi sağlamadığını anladım. değiştiriliyor ve tüm bu görsel görünüşü kendim yaratma fikrinden vazgeçiyorum.
Ancak, bazı uygulamaların, bu karmaşık metinleri işlemek için bazı OS'ye özgü girdi yöntemi kullandığını keşfettim. Bir örnek OSX Finder, eğer giriş yöntemini Japonca (Hiragana) olarak değiştirirsek ve bir bulucu penceresi odakta olduğunda yazmaya başladığında, tüm girişlerimi kabul eden ve bulucuya ileten bir pencere açar. Daha kazmak
aşağıdaki resme bakın ve benim için çok kolay bu hile yapmış olabilir belgeler ("http://mirror.informatimago.com/next/developer.apple.com/technotes/te/te_27.html#Downloads") bir sürü daha erken Metin Hizmetleri Müdürü olarak sunulmuştu böyle bir çerçeve olduğunu anladım AMA bu API kullanımdan kaldırıldı ve artık mevcut değil.
Şu an için arıyorum, bu kullanımdan kaldırılan API için bir alternatiftir. Herhangi bir kuruluş, kolay metin girişi için bu işletim sistemi giriş yöntemi bileşenini getirmeme yardımcı olabilecek bir kakao API'mız olup olmadığını biliyor mu?
Her türlü yardım/öneriniz açıktır.
'QInputMethod' ve ilgili sınıflar bununla ilgili yardımcı olur. –