Canvas üzerinde bir kitle kaynaklı proje yapma - sayfa 5

 
Реter Konow :

Uygulamamda, A ve B noktaları iki nesnenin konumuyla temsil edilir - kaydırıcı izinin X koordinatı (orijin) ve kaydırıcı kaydırıcının X koordinatı.

çizimde aynı.

dar düşünüyorsunuz, bazı ObjectGet / Set hakkında konuşuyorsunuz
kontrolde en az üç model birleştirilir - grafikler, olaylar, veriler.
nerede ve nasıl çizildiği önemli değil. [.......|..] gibi metin biçiminde de olabilir. Tuval üzerinde görünebilir veya iki MT dikdörtgen nesnesi ile gösterilebilir.

Olay veya veri modeli bundan etkilenmez.

 
o_O :

çizimde aynı.

dar düşünüyorsunuz, bazı ObjectGet / Set hakkında konuşuyorsunuz
kontrolde en az üç model birleştirilir - grafikler, olaylar, veriler.
nerede ve nasıl çizildiği önemli değil. [.......|..] gibi metin biçiminde de olabilir. Tuval üzerinde görünebilir veya iki MT dikdörtgen nesnesi ile gösterilebilir.

Olay veya veri modeli bundan etkilenmez.


Yine de, mekanizma benim için net değil. Genel bir fikir olarak daha detaylı anlatırsanız anlamama çok yardımcı olur. Teşekkür ederim.
 

Temel bir soru var.

Diyelim ki aynı grafik üzerinde iki uygulama, panel, gösterge var. Her biri kendi tuvaline mi yoksa ortak bir tuvale mi çizmeli?

Her iki durumda da sorular var.

 
o_O :

sadece daha az değil - ama hiç yok (her şeyin üzerine çizildiği bitmap_label hariç)

Metinle çalışmayı nasıl uyguladığınız ilginçtir (metin etiketi, metin için giriş alanı ). Çözmeniz gereken sorunların kısa bir listesi:

  • Ulusal alfabelerle çalışma (Örneğin, yazı tiplerinde aynı Times New Roman, İngilizce'den büyük güçlülere ve bazı Hintçe'ye kadar neredeyse tüm alfabeler için bir stile sahiptir).
  • Metin ölçekleme: 6-8-10-12...72 punto - aynı yazı tipinin boyutu sorunsuz olarak ayarlanabilir. Vektör stili deyim yerindeyse bu amaç için yaratılmıştır.
  • İtalik, kalın, altı çizili - bu türün her biri için kendi lib veya anahat algoritmanızı ne oluşturacaksınız?
  • Girdi/düzenleme, imleç kontrolü - hepsini bir resim biçiminde yapmak cehennem gibi bir iştir. Dürüst olmak gerekirse, bunu nasıl uygulayacağınızı hayal bile edemiyorum.

Ve tüm bunlar zaten çalışan "metin etiketi" ve "metin düzenlemeli metin etiketi" kontrollerinin arka planına karşı. Tek sorun, 32 karakterlik boyut sınırı ve entegre yazı tiplerinin kullanılamamasıdır.

Tüm bu sorunları çözmek için çok zaman öldüreceksiniz ama en iyi ihtimalle %30 oranında çözeceksiniz. Kodunuzun yüzlerce kilobaytı, en iyi ihtimalle standart öğelerden biraz eksik olacaktır, ancak kendi hastalıkları, aksaklıkları ve çeşitli hoş olmayan sınırlamaları olacaktır. Buna gerçekten ihtiyacın var mı?

 
Vasiliy Sokolov:
Документация по MQL5: Графические объекты / TextOut
Документация по MQL5: Графические объекты / TextOut
  • www.mql5.com
Графические объекты / TextOut - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
o_O :

sadece daha az değil - ama hiç yok (her şeyin üzerine çizildiği bitmap_label hariç)

Etkinlik modelini de unutmayın. Tuval üzerindeki olayları işlemek için tasarlanmamıştır. Sahip olduğunuz tek şey ekranın belirli bir alanındaki tuş vuruşları + fare koordinatları. Evet, bu karanlıktan bile FKÖ'den çıkmak mümkün ama çıkış zor ve çok uzun olacak.

 
Реter Konow :

Yine de, mekanizma benim için net değil. Genel bir fikir olarak daha detaylı anlatırsanız anlamama çok yardımcı olur. Teşekkür ederim.
xo.zip dosyasını arşivden çalıştırın https://www.mql5.com/ru/forum/92113#comment_2672543 tuval örneği
 
Vasiliy Sokolov :

Metinle çalışmayı nasıl uyguladığınız ilginç

daha önce gösterildiği gibi - TextOut kullanıyoruz

Tüm bu görevleri çözmek için çok zaman öldüreceksiniz

Aşılmaz engeller yüzünden başımızı dövmeyeceğiz. MK düzenleme için bu sorunlara bir çözüm getirmezse, tüm bunlar duracaktır.

SD'deki cevabı onlardan beklerken.

Etkinlik modelini de unutmayın. Tuval üzerindeki olayları işlemek için tasarlanmamıştır.

hatırla, netleştirme emri ticareti için panelinizin bir analogunu gösterdim? ve böylece CHARTEVENY_MOUSE_MOVE orada kullanılmaz, her şey bağımsız olarak analiz edilir.

İnanın bana, olaylarla veya giriş düzeltme işaretinin görüntülenmesiyle ilgili herhangi bir sorun yok.

Şimdi soru sadece klavye olaylarına dayanıyordu.

 
o_O :

Şimdi soru sadece klavye olaylarına dayanıyordu.

Klavye ile her şey az çok nettir. Bir tuşa basma olayı var, bu tuş için bir kod var. Başka ne istiyorsun?
 
o_O :

SD'den iyileştirmeler isteyin.

Bu arada, bana gelince, OnMouseDown olayının tanıtılması, normal DND açısından hayatı büyük ölçüde basitleştirecekti.
Neden: