Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Daha:
Sağ fare ile pencerenin alanına tıklayın, bir menü belirir. Fareyi hareket ettirin ve sol tıklayın. Sonuç olarak, pencere hareket eder.
Belki. Ne anlarsın, kendimi geliştirip test ediyorum, sonuç olarak, çalışma sürecinde yanlışlıkla karşılaşana kadar bazı hatalar hakkında hiçbir şey bilmiyorum. Her şeyi tek başıma yaparım...
İşte örneğim, ekteki dosyada üst üste bindirilmiş üç pencere var.
Alt pencereli tek bir pencere oluşturmak, sadece motoru ek kod kullanmadan kullanmaktır. Üst düğmelere basma olayını ele almanın yanı sıra.
En üstteki düğme tıklama olayını işleme:
Birkaç düğme, ancak yalnızca bir ana pencere
Böyle bir bug vardı. Düzeltildi. Olayın kendisi sırayla düzeltildi, ancak kod geliştikçe kaçınılması mümkün olmayan çeşitli değişikliklerle hatalar ortaya çıkıyor.
Evet, kolay değil
Demo resmi:
Sadece böyle bir durumda, ilk etapta olayları ve pencere kontrollerini iyi çalışmanız gerekiyor, gerisi zaten daha basit, gerisi çok daha fazla iş olsa da.
Birikme zaten orada.
1: Windows'ta kapatma ve simge durumuna küçültme düğmeleri olmalıdır (en azından).
2: pencereler tıklandığında üst üste yeniden çizilmelidir.
3: Pencereler fare ile hareket ettirilmelidir.
4. İmleç hareket ettiğinde ( işaretli olay) Windows grafikte "keşfedilmelidir" (odaklanmalıdır).
5. Tüm pencere öğeleri, pencerenin ortak "haritasında" olmalıdır ve fareyi üzerine getirdiğinizde (sivri olay) bulunacaktır.
En basit unsurlar:
1. Statik, boyut olarak değişmeyen ve çökmeyen Pencere.
2. Düğme.
3. Onay kutusu.
4. Radyo düğmesi.
5. Sekme.
6. Çizgi, çerçeve, bölücü, dikdörtgen.
Orta zorluktaki unsurlar:
1. Kaydırıcılar.
2. İlerleme çubukları.
3. Giriş alanları.
4. Kaydırılabilir alanlar.
5. Basit bir listenin öğeleri.
Yüksek derecede karmaşıklık unsurları.
1. Açılır liste (çok karmaşık öğe).
2. Dinamik (gerilebilir) pencere. Çok zor.
Toplamda yaklaşık 50 çeşit kontrol vardır. Her birinin, motorun karşılık gelen işlevselliği tarafından desteklenen ortak ve benzersiz bir özellik kümesi olmalıdır. En az 100 özellik vardır, aksi takdirde elementlerin çalışması ciddi şekilde sınırlandırılacaktır.
Basit şekiller ve çizgiler çok fazla özelliğe ihtiyaç duymaz, ancak öğe ne kadar karmaşıksa o kadar fazladır.Saçmalık! Tabloları unuttum! Orada bir orman var...
Ve ağaç benzeri bir liste ve çeşitli şeritlerden oluşan her türlü klasör ...
Saçmalık! Tabloları unuttum! Orada bir orman var...
Ve ağaç benzeri bir liste ve çeşitli şeritlerden oluşan her türlü klasör ...
Benim durumumda, "orman" ortalamadan daha karmaşık hale getirilmedi: ekran penceresi (tablonun görünür alanı), tüm hücrelerin sığması gereken tam boyutlu bir pencere, içinde hareket edecek ana pencere, satırlar ve içlerindeki hücreler için pencere ve ayrıca kaydırma (kaydırıcı, bant sınırlı). Göreceli yerleşim kısıtlamaları, özellikler tarafından belirlenir. Yalnızca kaydırıcı için , nesneyi hareket ettirme olaylarını durdurmak ve " tam boyutlu pencerenin" konumunu ayarlamak gerekir. Bunların hepsi sanal pencerelerle yapılır, görsel kısmı buna eklemeniz gerekir, görsel kısım olmadan çizgiler için pencereler ve tam boyutlu bir pencere olacaktır. Düzenlenen hücre için bir giriş alanı yapın (bu zaten kendiniz yapılır), etkileşimin geri kalanı motor tarafından uygulanır: her hücre için doğru olaylar gelir (fare olayları, yeniden çizim, hareket) .. .. Bu tür fırsatlar, çok sayıda pencere (büyük listeler, tablolar, birkaç bin pencere) olduğunda performansı artırmak için birkaç fikir daha var.