Hatalar, hatalar, sorular - sayfa 3126

 
Nikolai Semko # :

Bir Uzman Danışmanda veya bir göstergede bir veri yapısı veya bir dizi yapı oluşturur ve bir kaynağa gönderirsiniz.

Tuvalin kendisi bir grafik kaynağıyla çalışır (OBJ_BITMAP_LABEL/ OBJ_BITMAP ). Geriye kalan tek şey, kaynak adını başka bir uygulamaya söylemek ve piksellere kolayca erişecek. Ayrıca piksel biçimini de geçmeniz gerekecek. Ve en azından pikselleri okuyabilir, en azından başka bir CCanvas kullanarak değiştirebilirsiniz. Mevcut bir kaynağa eklemek için bir CCanvas::Attach yöntemine sahiptir.

 
Nikolai Semko # :

Ne gibi sorunlar var, Andrey?
Bir veri yapısı veya bir dizi yapı oluşturma

Sorun yok! Sadece ekstra jestler ve ben onlardan bahsediyorum.

Herhangi bir arabellek göstergesi, başka herhangi bir gösterge veya EA tarafından okunabilir ve tuvalin özel bir katmana ihtiyacı vardır.

Örneğin, çalışan göstergelerin bir listesini alan ve ardından bunları belirtilen enstrümanlar/TF listesinde oluşturan ve ardından onlardan sinyaller toplayan (ve bunları telgraflara gönderen) bir Uzman Danışmanım var. Böylece herhangi bir arabellek göstergesi grafikte kolayca başlatılabilir ve otomatik olarak alınır. Ve tuval göstergesinin manuel olarak bağlanması gerekecek ve ardından işin geri kalanının manuel olarak kaydedilmesi gerekecek.

Çalışmayı tuval göstergeleriyle birleştirmek gerekiyor. Ve korkarım ki böyle bir birleşme sonucunda ... tampon göstergeleri elde edilecek))

 
Nikolai Semko # :

Ne gibi sorunlar var, Andrey?

Kısacası bulamadım ve aramadım bile

 
Andrey Khatimlianskii # :

Sorun yok! Sadece ekstra jestler ve ben onlardan bahsediyorum.

Herhangi bir arabellek göstergesi, başka herhangi bir gösterge veya EA tarafından okunabilir ve tuvalin özel bir katmana ihtiyacı vardır.

Örneğin, çalışan göstergelerin bir listesini alan ve ardından bunları belirtilen enstrümanlar/TF listesinde oluşturan ve ardından onlardan sinyaller toplayan (ve bunları telgraflara gönderen) bir Uzman Danışmanım var. Böylece herhangi bir arabellek göstergesi grafikte kolayca başlatılabilir ve otomatik olarak alınır. Ve tuval göstergesinin manuel olarak bağlanması gerekecek ve ardından işin geri kalanının manuel olarak kaydedilmesi gerekecek.

Çalışmayı tuval göstergeleriyle birleştirmek gerekiyor. Ve korkarım ki böyle bir birleşme sonucunda ... tampon göstergeleri elde edilecek))

Hem göstergelerde hem de Uzman Danışmanlarda aynı sınıfların görselleştirme için kullanılması da dahil olmak üzere olasılıkları genişletmekten bahsediyorum. Göstergelerde, elbette, her zaman bir arabellek iletim yöntemi vardır ve saf bir tuval durumunda hiç kimse bunu kullanmayı yasaklamaz.
Ve bu arada, bir birleşim yoluyla bir arabellekte bir dizi yapı aktarıldığında zaten bir hibrit aktarım yöntemi uyguladım. Alıcı tarafta ek bir eklentiye ihtiyaç duyulmasına rağmen, öncelikle karmaşık değildir ve ikincisi, çift dizilerden ziyade yapılar sayesinde kullanıcı için başka bir göstergenin verileriyle çalışmayı daha kolay ve daha rahat hale getirir. Kullanıcılar kesinlikle sevecektir.
 
Mihail Matkovskij # :

Tuvalin kendisi bir grafik kaynağıyla çalışır (OBJ_BITMAP_LABEL/ OBJ_BITMAP ). Geriye kalan tek şey, kaynak adını başka bir uygulamaya söylemek ve piksellere kolayca erişecek. Ayrıca piksel biçimini de geçmeniz gerekecek. Ve en azından pikselleri okuyabilir, en azından başka bir CCanvas kullanarak değiştirebilirsiniz. Mevcut bir kaynağa eklemek için bir CCanvas::Attach yöntemine sahiptir.

Grafikleri aktarma görevinin olması pek olası değildir, çünkü genellikle çubuklar ve başka bir pencerenin fiyatı ile senkronize edilir ve Etkinlik modeliyle entegredir.
Ayrıca, gösterge penceresi yoksa veya aktif değilse, grafik kaynağının bile oluşmayacağını düşünüyorum.
Göstergeli pencere yoksa, geriye kalan tek yol bir arabellek veya arabellek kullanan iCustom'dur. Ama dediğim gibi bu tamponlara bir yapı ya da bir dizi yapı koyabilirsiniz.
 
Andrei Trukhanovich # :

Kısacası bulamadım ve aramadım bile

Rapor ettiğiniz için teşekkür ederiz.
Şimdi senin bilmediğini biliyoruz
 
Nikolai Semko # :
Ayrıca, gösterge penceresi yoksa veya aktif değilse, grafik kaynağının bile oluşmayacağını düşünüyorum.

Gösterge çalışıyorsa ve penceresi yoksa hangi durumlarda merak ediyorum? Ve pencere etkin olmadığında (kullanıcı başka bir grafiğe geçti veya simge durumuna küçülttü), o zaman kaynak bellekten kaldırılır, basitçe silinir mi?

Nikolay Semko
Ama dediğim gibi bu tamponlara bir yapı ya da bir dizi yapı koyabilirsiniz.

İşte kabul ederdim. Çok görevli bir robot yaratmam gerekiyordu. Uygulamanın ilk örneği görevler oluşturur ve onlar için çizelgeler oluşturur, ardından aynı robotla özel bir şablon uygular. Ardından, ilk robot görevleri oluşturur ve makine tarafından oluşturulan robotlar bunları gerçekleştirir. Veri aktarımı kaynaklar aracılığıyla gerçekleştirilir. Sayı ve yapı dizileri oraya iletilir. Burada sitede http üzerinden bir veri aktarımı örneği var (eğer hafızam bana doğru hizmet ediyorsa). Ama önce yapılar, boyutları ve türleri hakkında veriler ve ardından verilerin kendisi var. Uzman Danışmanımda, daha basit hale getirmeye karar verdim, dizeleri ve sayıları bir dizi uç karakterden dizeler olarak geçirmeye karar verdim, bu da okuma/yazmayı büyük ölçüde basitleştirdi. Ancak bir şekilde gösterge arabelleklerine bayt yazıp oradan okumak mümkün değildi. Ancak bu yöntemin bir dezavantajını zaten görüyorum, bu, baytların gösterge çubuklarının sayısıyla sınırlandırılmasıdır. Her ne kadar dizinin her hücresinde 8 bayt. Belki çok büyük bir dezavantaj değildir. Kim bilir...

 
Mihail Matkovskij # :

Gösterge çalışıyorsa ve penceresi yoksa hangi durumlarda merak ediyorum?

iCustom kullanmayı kastetmiştim

Ve pencere etkin olmadığında (kullanıcı başka bir grafiğe geçti veya simge durumuna küçülttü), o zaman kaynak bellekten kaldırılır, basitçe silinir mi?

Bu sadece benim tahminimdi, çünkü pencere küçültüldüğünde görüntülemenin pek bir anlamı yok. MT'de nasıl uygulanıyor - Kontrol etmedim ama benzer bir şeye rastladım. Nüansları unuttum.
Her durumda, kaynağın silinmesi olası değildir, ancak zamanla güncellenmez. Onlar. CCanvas::Güncelleme çalışmıyor

 void CCanvas::Update( const bool redraw)
  {
//--- check
   if (m_rcname== NULL )
       return ;
//--- update resource and redraw
   if ( ResourceCreate (m_rcname,m_pixels,m_width,m_height, 0 , 0 , 0 ,m_format) && redraw)
       ChartRedraw ( this .m_chart_id);
  }
 
Nikolai Semko # :

iCustom kullanmayı kastetmiştim

Değerlerin kaynak ve arabelleklerden geçirilebileceği, ancak Canvas kaynağı üzerinden geçilemeyeceği ortaya çıktı. iCustom kullanarak çıktılı göstergeyi Canvas'a çağıran ilginç bir görev ortaya çıkıyor . Bunu denemedim. Bana öyle geliyor ki bu durumda hatalar mümkün. Veya iCustom aracılığıyla yüklenen böyle bir gösterge hiç çalışmayabilir mi?...

Her durumda, kaynağın silinmesi olası değildir, ancak zamanla güncellenmez. Onlar. CCanvas::Güncelleme çalışmıyor

ResourceCreate'in çalıştığını düşünüyorum, ancak sonuç ChartRedraw ile görüntülenmiyor. İşlev çağrıları yapılır, ancak sistem, devre dışıyken grafiğin güncellenmesine gerek olmadığını anlar. Ancak ResourceCreate işe yaramadıysa, göstergenin grafiğin etkin olmadığı, ancak Canvas kaynağının güncellenmediği anda rastgele bir onay işaretindeki verileri güncellediğini hayal edin. Ardından kullanıcı bu etkin olmayan grafiği etkinleştirmeye ve göstergeye (Canva) bakmaya karar verdi . Ve bir onay işareti olduğu ortaya çıktı, ancak Canvas, kullanıcı grafiği değiştirmeden önceki gibi aynı kaldı. Ve hareketsizlik döneminde çok fazla kene olsaydı?... O zaman gösterge elbette onları işleyecekti, ancak Kanvas'ta tek bir sonuç görüntülenmeyecekti.

 
Mihail Matkovskij # :

ResourceCreate'in çalıştığını düşünüyorum, ancak sonuç ChartRedraw ile görüntülenmiyor.

Evet, muhtemelen haklısın. Büyük ihtimalle öyle olacaktır.
Ve kaynakları kurtarmak için, pencere etkinliğini kontrol etmek ve pencere aktif değilse bir bitmap oluşturmamak doğru olacaktır.

Kontrol etmeye değer, spekülasyon yapmaya değil.