MQL ile yazılmış kullanıcı arayüzleri galerisi - sayfa 71

 
Edgar Akhmadeev #:

Talep var. Çoğu kişinin bu konuda sessiz kalması normal. İnsanlar pusuya yatmış bekliyor. Şimdiye kadar hiçbir büyük proje tamamlanamadı. Tek başına ve finansman olmadan bunu başarmak her zaman zordur. Şimdiye kadar tek bir kişi tarafından başarılı bir sonuca ulaştırılan tek bir proje biliyorum - Steam'de "VLADIK BRUTAL".

Pusuya yatıp beklemek garip bir taktik. :) Eğer insanlar aktif olarak dahil olsalardı, öncelikleri değiştirmezdim ve birçok şey şimdi tamamlanmış olurdu. Ancak, listelediğim ana görevler talep ne olursa olsun tamamlanacak, çünkü bunu kişisel bir ilgi olarak görüyorum. Ama açgözlü değilim, toplumla paylaşacağım). Sadece net bir zaman çerçevesi belirlemeyeceğim.

Her şeyi yeni yıldan önce bitirmeyi umuyorum. Dinamik tablolara ihtiyacınız var, değil mi? Kesinlikle olacak.

Düzenli tabloların montajda mevcut olduğunu ve iyi çalıştığını da hatırlatmak isterim. Ve şimdi, program arayüz yönetiminin varlığı sayesinde, onlarla çalışmak kolay hale geldi.

İşaretleme dili üzerine çok fazla ders var, çünkü materyal yarısından daha azını kapsıyor, ama yine de - kimin buna ihtiyacı var? Ben mi? Ben zaten her şeyi biliyorum. Başka kimlerin? Herhangi bir istek duymuyorum. Ancak her bir dersi oluşturmak büyük bir emek ve her bir eğitim yazısı bir mini makale. Çok fazla iş var.

Sorular bunlar. Anlayabileceğinizi düşünüyorum. Ancak, dinamik tablolar ve grafikler çok pratik bir anlam ifade ediyor ve ortaya çıkacaklar.
 
Реter Konow #:
Pusuya yatıp beklemek garip bir taktik. :) Eğer insanlar aktif olarak katılıyor olsalardı, önceliklerimi değiştirmezdim.

Sadece kendi adıma konuşacağım. Nasıl yardım edeceğimi bilmiyorum. Aktif olarak nasıl katılacağımı. Yapabileceğim her şeyi yaptım. Elimdeki bilgilere dayanarak kodu yazdım, güzel bir arayüz oluşturdum. Sonra kişisel olarak neye ihtiyacım olduğunu fark edemedim. Ve henüz uygulamaya koyamadığım bir şeyi nasıl kullanacağıma dair ders çalışamıyorum. Ben bir uygulayıcıyım. Bu yüzden zamanı geldiğinde kesinlikle derslere ihtiyacım olacak.

Farklı kontrol düğmeleri ve farklı şeyleri kontrol etmek için düğmeler - kişisel olarak bunlara daha sonra ihtiyacım olacak. Zamanı geldiğinde. Şimdilik kullanışlı ve güzel bir ekran için bir arayüz bekliyorum. Ve acelemiz yok, bu yüzden sizi dirseklerinizin altına itmiyoruz. Görevde çalışmadığınızı anlıyoruz. Acelem olduğu için soru sormadım, sadece - bir yerlerde kayboldular.

 
Edgar Akhmadeev #:

Sadece kendi adıma konuşacağım. Nasıl yardım edeceğimi bilmiyorum. Aktif olarak nasıl katılacağımı. Elimden gelen her şeyi yaptım. Mevcut bilgilere göre kodu yazdım ve güzel bir arayüz elde ettim. Sonra kişisel olarak ihtiyacım olan şeyi gerçekleştiremedim. Ve henüz uygulamaya koyamadığım bir şeyi nasıl kullanacağıma dair dersler çalışamıyorum. Ben bir uygulayıcıyım. Bu yüzden zamanı geldiğinde kesinlikle derslere ihtiyacım olacak.

Farklı kontrol düğmeleri ve farklı şeyleri kontrol etmek için düğmeler - şahsen bunlara daha sonra ihtiyacım olacak. Ona ulaştığımda. Şimdilik kullanışlı ve güzel bir ekran için bir arayüz bekliyorum. Ve acelemiz yok, bu yüzden sizi dirseklerinizin altına itmiyoruz. Görevde çalışmadığınızı anlıyoruz. Acelem olduğu için değil, bir yerlerde kaybolduğum için soru sordum.

Fark ettiğim kadarıyla, uygulamanızın hangi arayüze ihtiyacı olduğunu henüz bilmiyorsunuz. :) Bu konuda size yardımcı olamam. Ancak bunu anladığınızda, bir taslak oluşturun. Muhtemelen tasarımcımın ve motorumun mevcut yetenekleri fazlasıyla yeterli olacaktır. Dediğim gibi, eksik olan sadece üç ana şey var:

1. Dinamik tablolar sınırsız sayıda satıra sahip tablolardır.

2. Oluşturulan tablolar - bunlar fonksiyon tarafından "anında" toplanan tablolardır. Büyük veri setlerinden alınan bireysel parametrelerin hızlı çıktısı, sıralanması ve karşılaştırılması için gereklidirler.

3. R'deki gibi bilimsel grafikler. Bunlar standart CGraphic kütüphanesinde ve Anatoly Kozharsky'nin kütüphanesinde zaten uygulanmaktadır. Ben kendi yöntemimle uygulayacağım.

Diğer her şey benim yapıcımda. Uygulamanızın neye ihtiyacı olduğunu düşünün. Bir taslak oluşturun. Buraya gönderin. Kib kodunu yazmanıza yardımcı olacağım.
 
Edgar Akhmadeev #:

... Elimdeki bilgilere göre kodu yazdım ve güzel bir arayüz elde ettim. Sonra kişisel olarak neye ihtiyacım olduğunu fark edemedim. ....

Bu arada, o zaman çalışmayan şey zaten çalışıyor, çünkü arayüzün bir yazılım kontrolü var. O zamanlar tablolarınıza parametre çıkışı yapamadığımızı hatırlıyorum. Şimdi bunu yapmak çok kolay. Tablonuz çalışabilir ve değer çıktısı verebilir. Bu zaten motorda uygulanıyor. Bu sadece kayıt için.
 

Sadece neyin gerekli olduğunu bilmekle kalmıyorum, aynı zamanda maketi de yaptım. İşte düzeltilmiş kodunuz ve düzeniniz https://www.mql5.com/ru/forum/467909/page37#comment_53863397.

Tam olarak (sizin terimlerinizle) dinamik ve oluşturulmuş tablolara ihtiyacım var. Yani, programlı olarak belirsiz sayıda satır ekleyin (sağduyu ile sınırlı), bunları doldurun, tablonun kendisini rahatça kaydırın, çerçeveyi onunla değil. Böylece başlıklar yerinde kalır.

Şu ana kadar üzerinde çalıştığınız şey bu. Bu yüzden sessizce kıçımın üstüne oturup bekliyorum. Kendim için acelem yok, senin için de yok. Sonsuza kadar yaşayacağım. Şimdilik işe yarıyor.

Галерея UI написанных на MQL - Попробуйте разместить иконку и текст на элементах.
Галерея UI написанных на MQL - Попробуйте разместить иконку и текст на элементах.
  • 2024.07.02
  • Реter Konow
  • www.mql5.com
По сути есть только два варианта расположения текста и иконки внутри кнопок. Можно использовать как шаблон для любых элементов с текстом и иконкой. Если кнопки размещаются во фрейме командой TOP - все отлично. а название кнопки портится Баг или мой фейл - не пойму
 
Edgar Akhmadeev #:

Sadece neyin gerekli olduğunu bilmekle kalmıyorum, aynı zamanda maketi de yaptım. İşte düzeltilmiş kodunuz ve düzeniniz https://www.mql5.com/ru/forum/467909/page37#comment_53863397

Tam olarak (sizin terimlerinizle) dinamik ve oluşturulmuş tablolara ihtiyacım var. Yani, programlı olarak belirsiz sayıda satır ekleyin (sağduyu ile sınırlı), bunları doldurun, tablonun kendisini rahatça kaydırın, çerçeveyi onunla değil. Başlıkları yerinde tutmak için.

Şu ana kadar üzerinde çalıştığınız şey bu. Bu yüzden sessizce kıçımın üstüne oturup bekliyorum. Kendim için acelem yok, senin için de yok. Sonsuza kadar yaşayacağım. Şimdilik işe yarıyor.

Anlıyorum. Dinamik ve oluşturulmuş tablolar benim ve sizin için gerekli, bu yüzden olacaklar. Yeni yıldan önce tüm görevleri bitirmeye çalışacağım.
 
Ne kadar ilerledik?
 
hini #:
Ne kadar yol kat ettik?
Günümüzde, bilimsel grafiklerle birlikte çalışması beklenen dinamik ve üretilmiş tablolar kavramı oluşuyor. Görev sadece teknik kısmı - tablolar ve grafikler - geliştirmek değil, aynı zamanda analitik çalışmada bu araçların "ortak yaşam" yollarını bulmaktır.

İşte bir örnek:

1. Veriler bir dosyaya yüklenir. Özel algoritmalar bunları tablolara, satırlara ve sütunlara dağıtır.

2. Kullanıcı gerekli tabloya erişir, bir satır seçer ve bu satır veya sütundaki şekilleri kullanarak bir eğri veya diyagram çizmek için çift tıklar.

3. Kullanıcı tablonun gerekli hücresini seçer ve içinde bulunan parametreyle ilişkili verilerle yeni bir tablo oluşturulmasını ister.

4. Kullanıcı tablolardan grafiklere, grafiklerden tablolara ve pasta grafiklere "anında" geçerek yeni tablolar ve grafikler oluşturur. Basit tıklamalarla ve pencereye parametreler girerek, verileri farklı "açılardan" ve görünen grafiksel gösterimler içinde farklı kombinasyonlarda görüntüleyebilir.

Tüm bunlar kuşkusuz verimli çalışmaya ve verilerdeki ilişkileri ve kalıpları araştırmaya katkıda bulunuyor.

Tablolar, grafikler ve çizelgeler aracılığıyla verilerle dinamik çalışma için uygun bir sistem uygulamayı planlıyorum.

En önemli şey doğru kavramdır. Oluşturulması en uzun zamanı alır. Teknik uygulama nispeten daha az zaman alır.

Not: Ayrıca, GUI oluşturucu ve işaretleme dili üzerine ilk makalemi hazırlıyorum.

Not: Makale yayınlandığında kod tabanı için bir sürüm hazırlayacağım, böylece dileyenler yapıcıyı indirebilecekler.

Genel olarak çok iş var).

 
Sana planlarımı anlatayım.

1. İşaretleme dili üzerine bir ders kitabı oluşturmak.

İşaretleme dili üzerine eksiksiz bir ders kitabı toplamak, bunu bölümler, kısımlar ve konular halinde düzenlemek gerekiyor.


2. Arayüz oluşturucu ve KIB dili üzerine makaleler yazın.

Bitmiş öğrenme materyalini bir dizi makaleye bölün, bunlara kodlar, diyagramlar, resimler ve gifler ekleyin.

3. İlk makaleyi yayınlamadan önce, yalnızca KIB kod şablonlarını yayınlamak amacıyla özel bir başlık açın. İsteyenler hazır parçaları ödünç alarak kolayca bir GUI oluşturabilecekler. Ayrıca isterlerse KIB kodları da ekleyebilecekler.

4. İlk makale yayınlanmadan önce, oluşturucunun son sürümünü kod tabanına gönderin.

Bu sayfada resimler, gifler ve videolar içeren ayrıntılı bir kullanım kılavuzu yayınlayın.

5. Makalenin başında oluşturucuya ve kurulum talimatlarına bir bağlantı verin ve makalenin sonunda şablonların bulunduğu dala bir bağlantı bırakın. Böylece, okuyucular makaleyi okuduktan hemen sonra, hazır pencereleri veya öğe gruplarını ödünç alarak bir grafik arayüz oluşturmayı deneyebileceklerdir. Daha sonra, öğrendikçe, arayüzlerini deneyecek ve geliştireceklerdir.

6. Bence, okuyucuların tasarımcının yeteneklerini kolay anlamasını ve hızlı bir şekilde ustalaşmasını sağlamak için, malzemenin sunumunu basitleştirmek ve bol miktarda bilgilendirici resimler, okunabilir şemalar ve yorumlanmış kodlar içeren makaleler sunmak gerekir. Bu nedenle "ne kadar basit o kadar iyi" sloganıyla, mantıksal basitlik ve anlam netliği için çabalayarak makaleler yazacağım.

7. Yapıcıyı kod tabanında yayınlamadan önce bazı ön çalışmalar yapmam gerekiyor:

a) Katologların isimlerini İngilizceye çevirmek.

b) Yapıcıyı derlerken ortaya çıkan tüm uyarıları tamamen kaldırın (KIB kodu değil).

c) Kontrollerin çalışmasında daha önce fark edilen bazı hataları düzeltin.

d) Motora bağlı kullanıcı kodunda hata ayıklamak için bir "saplama" koyun.

Bu fikre göre, hata ayıklama sırasında motor sadece satırına yorum yapılarak kapatılacak ve sadece "UIDATA.mqh" hizmet dosyasındaki grafik çekirdek ve sarmalayıcı işlevler bağlı kalacaktır. Yapıcının diğer tüm normal fonksiyonları özel bir dosyada "durdurucu" olarak hizmet veren "boş fonksiyonlar" olarak ayarlanacaktır. Bu dosyanın satırı hata ayıklamadan önce kullanıcı tarafından kaldırılacaktır.

Konsept bu, ancak henüz pratikte kontrol etmedim.


8. İlk makale benim için en zor olanı olacak, çünkü okuyuculara amaçları, yetenekleri ve cihazları hakkında tam bir fikir vererek tüm yapıcı ve biçimlendirme dilini kısaca açıklamamı gerektirecek. Ayrıca, gelecekteki makalelerin içeriğini listeleyeceğim ve eğitim materyallerinin gelecekteki dağıtımına ilişkin net bir şema ekleyeceğim.

Bana göre makaleler birer derstir ve bu nedenle materyallerin sunumu pedagojik olmalıdır.

Not: Başlangıçta, Anatoly Kozharsky'nin grafik arayüz üzerine iyi bilinen makalelerinin örneğine güvenmeye karar verdim - Kolay ve Hızlı kütüphane. Benim için bu konuyu ortaya koyan en eksiksiz sonuç budur. Aynı zamanda Anatoly'nin makalelerinden önce ve sonra UI-kütüphaneleri oluşturmak için değerli girişimlerde bulunan diğer yetenekli yazarların katkılarını saygıyla kabul ediyorum. Özellikle Dmitry Fedoseev ve Artem Trishkin'den bahsetmek istiyorum.

Anatoly'nin makalelerini bir kalite standardı ve profesyonellik göstergesi olarak kabul ettikten sonra, onların formatını kendi materyalime "denedim" ve uyumsuzluğu fark etmek zorunda kaldım. Yaklaşım ve kavrayışlardaki farklılıklar çok büyük. Bu nedenle, seleflerimin belirlediği yüksek yazarlık standardını karşılamayı unutmadan kendi tarzımı bulmam ve geliştirmem gerekecek.
 

MT5 üzerinde görsel GUI editöründe çalışma süreci.

4 yıl önce:

(Resmin üzerine tıklayın).


Not: Gösterinin içeriği aşağıdaki yazıda özetlenmiştir.