![MQL5 - MetaTrader 5 müşteri terminalinde yerleşik ticaret stratejileri dili](https://c.mql5.com/i/registerlandings/logo-2.png)
Ticaret fırsatlarını kaçırıyorsunuz:
- Ücretsiz ticaret 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
Bunu anlayabilirsin.
Konu 14.3: Eleman parçalarının (çerçeveler, tabanlar, metin, kaydırıcılar ve kaydırıcı panolar) yanıp sönmesiyle tehlikeli değerlerin gösterilmesi.
Elemanların yanıp sönmesi, parametrelerin tehlikeli değerler bölgesine geçişini işaret eden renk göstergesine mükemmel bir ektir. Yeni çözümün uygulanması öncekine benzerdir, ancak renk göstergesi değer kritik değere ne kadar yakınsa rengin o kadar parlak olması prensibine göre çalışıyorsa, yanıp sönme yalnızca başlangıç renginin yanıp sönme için ayarlanan renkle değişim sıklığını artırır. Kullanıcı yanıp sönme gecikmesini programlı olarak ayarlayabilir, kademeli olarak 25 ms'ye düşürebilir veya 2,5 saniyeye çıkarabilir. Bu durumda, her iki mekanizma da aynı anda çalıştırılabilir. Renk açık yeşilden parlak kırmızı ve bordoya kayar ve yanıp sönme hızı artar. Mekanizmalardan biri diğerine müdahale etmez. Daha sonra, pratik örnekleri inceleyeceğiz.
*Önemli: yanıp sönme, renk göstergesi işlevlerinden bağımsız olarak etkinleştirilir. İki mekanizma teknik olarak birbiriyle ilişkili değildir ve paralel ya da ayrı olarak çalışabilir.
Yanıp sönmeyi uygulamak için etkileşimli öğelere yeni özellikler eklenmiştir:
Yanıp sönme hızını ve durmasını kontrol etmek için yeni özellikler eklendi:
Yukarıdakileri özetleyelim:
Yarın pratik örneklere geçeceğiz.
Bugün sadece ne hakkında konuştuğumuzu anlamak için küçük bir demo.
Ne yazık ki, kayıt sırasında gecikmeler oluyor. İşlemci yüklendi. Ancak demo, öğelerin asenkron olarak ve farklı hızlarda yanıp söndüğünü gösteriyor. Elemanların farklı kısımları da yanıp sönüyor. Tüm bunlar programlı olarak ayarlanır. Ve Görev Çubuğundaki sekme otomatik olarak en hızlı yanıp sönen öğeyi buldu ve maviye döndü. Ardından, öğe daha az yanıp sönmeye başladığında, diğer en hızlı yanıp sönen öğeyi buldu ve kırmızı oldu.
Bunu yarın daha ayrıntılı olarak inceleyeceğiz.
Not: Bu çok kullanışlı özellikleri kullanma seçeneklerini de tartışacağız.
Dünkü konunun devamı...
Bugün element yanıp sönmesi konusunu kavramsal olarak özetleyip bitireceğiz.
Dün yanıp sönmeyi sadece tehlikeli değerlere işaret etme bağlamında ele aldım, ancak uygulama bundan çok daha geniş olabilir. İşte bir örnek:
Birkaç pazar yerinin durumunu analiz eden çok para birimli bir Uzman Danışman hayal edelim. Bir dizi karmaşık kritere göre optimum giriş/çıkış noktalarını seçtiğini varsayalım. Uzman Danışman yarı otomatik modda çalışır ve tüccar ticaret stratejisinin tüm mantığını programlayamaz veya programlamak istemez. Robotu pazar yerlerini izler, veri toplar ve önemli noktalar hakkında bilgi verir. Uzmanın işi, sonuçları tablo ve diyagramlarda analiz etmek ve görüntülemekle sınırlıdır. İşlemlerle ilgili nihai karar bir kişi tarafından verilir.
Bu varyantta alım satım faaliyeti, gerçek zamanlı veri akışlarının gözlemlenmesi ve çalışan değerler serisinin özel parametreler halinde paketlenmesinden oluşur. İkincisi, durumsal farkındalığı ölçeklendirmeye yardımcı olur.
Ancak, canlı etkileşim zamanında kararlar alınmasını gerektirir. Sorun, analiz sonuçları birden fazla grafik görünüm aracılığıyla farklı pencerelerde görüntülendiğinde ortaya çıkar. Dikkat gerektiren bilgi miktarı artar ve dikkat odağı bölünür. Sonuç olarak, piyasa perspektifi yatırımcının zihninde bulanıklaşır ve işinin verimliliği azalır. Yorgunluk gelir.
Bu durumda yanıp sönen öğeler iyi bir yardımcıdır:
Şimdi yeni işlevselliğin pratik bir dökümüne geçelim:
//----------------------------------------------------------------------------------------------------------
1. Hazırlık eylemlerinin sırası:
Şimdi API dosyasında "Start" butonunun durumunu bulalım ve butona basma ve basmama olayında Blink_start( ) ve Blink_stop() fonksiyonlarının çağrılarını yazalım:
Fonksiyonları içerikle doldurmaya geçelim:
1. "Başlat" düğmesinin çerçevesinin yanıp sönmesine ihtiyacımız var. Aşağıdaki kodda gösterildiği gibi çerçevenin yanıp sönmesi için bir çağrı yazalım. Düğme çerçevesinin yanıp sönme özelliğinin tanımlayıcısı p1_BLINK_frame' dir . Yanıp sönme rengini ve yanıp sönme nesnesini belirtin.
2. Şimdi düğme bırakıldığında yanıp sönmenin devre dışı bırakılmasını uygulayalım. p1_BLINK_STOP tanımlayıcısı yanıp sönmeyi kapatmaktan sorumludur. Bunun dışında parantez içine herhangi bir şey koymanıza gerek yoktur.
Sonucu kontrol edelim:
3. Çerçeve yerine düğme metninin yanıp sönmesini açalım. Metnin yanıp sönmesinden pn_BLINK_text özelliğinin tanımlayıcısı sorumludur:
Sonuç: düğme metni mavi renkte yanıp söner ve düğmeye basıldığında yanıp sönmeyi durdurur.
4. Düğme tabanının yanıp sönmesini açalım. pn_BLINK_base özelliğinin tanımlayıcısı tabandan sorumludur:
Sonuç: düğme tabanı kırmızı renkte yanıp söner ve düğmeye basıldığında yanıp sönmeyi durdurur.
Şimdi düğmenin çerçevesinin ve metninin yanıp sönmesini birleştirelim:
Sonuç:Düğme çerçevesi ve düğme metni, amaçlandığı gibi farklı renklerde eşzamanlı olarak yanıp söner.
5. Bu penceredeki diğer öğeleri yanıp sönmeye bağlayalım:
Yanıp sönmenin devre dışı bırakılmasını da Blink_stop( ) fonksiyonunun içine yazalım :
Sonuç: Yeni elemanlar Blink_start() ve Blink_stop() fonksiyonlarına dahil edilir ve amaçlandığı gibi yanıp söner.
6. Düğmeye tıklandığında pencere çerçevesinin yanıp sönmesine neden olalım. (Geciken öğelerin yanıp sönmesini geçici olarak devre dışı bırakalım).
Sonuç: pencere çerçevesi olması gerektiği gibi yanıp söner.
*Önemli: dikkate alınan tüm öğeler ve pencere çerçevesi varsayılan hızda yanıp söner.
Daha sonra kaydırıcı kolu ve düğmeli alan ile öğelerin yanıp sönme hızını düzenleyeceğiz.
7. Yanıp sönme hızını düğmeler ve kaydırıcı ile alandaki değere bağlayalım. Tüm elemanlar ve pencere çerçevesi aynı anda yanıp sönecek ve yanıp sönme hızı bu elemanlar tarafından manuel olarak ayarlanacaktır.
Yanıp sönme hızının pn_BLINK_DELAY gecikmesine bağlı olduğunu hatırlatalım .
Sorunu çözmek için aşağıdakileri yapalım:
Blink_start() fonksiyonunun içine pencere çerçevesinin yanıp sönmesini ekledik : .
Blink_stop() fonksiyonunun içine pencere çerçevesinin yanıp sönmesini devre dışı bırakmayı ekledik:
Blink_delay() fonksiyonunun yazılması:
Kaydırıcı ve giriş alanı öğeleri olayında Blink_delay() işlevini çağırın ve öğelerin geçerli değerini ona aktarın:
*Önemli not: onay kutusu ve açılır liste öğelerinin yanıp sönme hızını değiştirmenin imkansız olduğu ortaya çıktı. Bu hız her zaman 20'ye (yarım saniye) eşittir. Bu kasıtlı olarak yapıldı, ancak muhtemelen gelecekte değiştireceğim. Diğer öğeler yanıp sönme hızını değiştirebilir.
"Spin_the_value" öğesinin (düğmeli alan) olayından Blink_delay() işlevine bir çağrı yazalım . Alan kaydırıcıya bağlıdır, bu nedenle çağrıyı kaydırıcı kasasına koymaya gerek yoktur. Bağlantı çalışacak ve doğrudan bir çağrı olmadan kaydırıcı, düğmeli alan aracılığıyla yanıp sönme hızını değiştirecektir:
Sonuç: düğmeli alan ve kaydırıcı, penceredeki öğelerin yanıp sönme hızını değiştirir.
Sonuçlar:
Bu konunun tükendiğini düşünüyorum.
Listede bir sonraki - "İptal" düğmesine basarak girilen değerlerin iptali.