2016-03-22 16 views
0

Makinemi test etmek ve veri toplamak için bir yazılım yapıyorum. Yazılımım şimdi zamana göre 7 bilgi (4 sohbet ve 3 bitmap) gösterebilir. Ancak, tüm veriler sadece şekilde gösterildiği gibi gerçek zamanlı olarak gözlemlenebilir ve zamanlayıcıyı duraklattığımda hepsini kaybettim. Tüm bu verileri (4 sohbet ve 3 bitmap) kayıt yönteminde nasıl gözden geçirebilirim? Örneğin, ben sana, tasarım olur SQL veritabanında geçmiş verileri depolamak önermek 2.UI veya grafikler verilerini incelemek için araç

Software interface This is the function of displaying data

+0

nasıl? – Eminem

+0

En hızlı yol, dizin ardışık dosyalar olabilir, ancak Zaman ve Gösterge Kimliği ile uygun kümelenmiş dizinli SQL tablosu iyi performans gösterecektir. Geçmiş yıllardaki bu gibi verileri depolayabilirsiniz. –

+0

Beklediğiniz veri miktarını tahmin edin! Programın çalışmasına devam etmeleri gerekip gerekmediğine karar verin! Sonuçları soruya ekleyin! – TaW

cevap

1

şekilde gösterildiği gibi bir film oyuncusu gibi geçmiş verileri kontrol etmek için bir bar var istiyorum ,

SampleUML

önemli bir parçası de tüm tarihsel değerleriyle tabloyu tasarladık etmektir IndicatorID &tarafından kompozit kümelenmiş dizini kullanın: şuna benzer. SQL Server örneği: MS Charts controls yılında

CREATE TABLE [PenData](
    [IndicatorID] smallint NOT NULL, 
    [Time] datetime2(0) NOT NULL, 
    [Value] real NULL 
CONSTRAINT [PK_Data] PRIMARY KEY CLUSTERED 
(
    [IndicatorID] ASC, 
    [Time] ASC 
)) 

Zoom In yapmak ve Uzaklaştırma bir grafiğe sahip bir kaydırma çubuğu olabilir:

 chart1.ChartAreas[0].AxisX.ScaleView.Zoomable = true; 
     chart1.ChartAreas[0].AxisX.ScrollBar.IsPositionedInside = false; 
     chart1.ChartAreas[0].AxisX.ScrollBar.Enabled = true; 
     chart1.ChartAreas[0].AxisX.ScrollBar.Size = 20; 
     chart1.ChartAreas[0].AxisX.ScrollBar.BackColor = Color.LightGray; 

Yani bir formdaki başka bir denetime oluşturmak, bu ne veri kontrolleri Veritabanından grafiğe (hangi gün vb.) - oynatma kontrolünüz gibi - yüklenir ve kullanıcının yüklenen verileri gereken şekilde yakınlaştırmasına izin verebilirsiniz. Windows perfmon uygulamasında bu işlevi kullanır. Kodunuzdaki kodları da yakınlaştırabilir, örn. kullanıcı tarafından belirtilen zaman aralığı. Eğer onlar toplanan sanki bilgisini oynatmak istiyorsanız


, gerçek zamanlı veri çalma hissi yaratmak için bir zamanlayıcı eklemek gerekir - Eğer görüntüleri animasyon gerekir çünkü gerek varsayalım, aksi takdirde etkileşimli olarak görüntülemek daha iyidir.

Yani verileri gerçek zamanlı olarak görüntülüyorsanız tıpkı aynısını yaparsınız, ancak sensörlerinizden değerler almak yerine bunları veritabanından okursunuz.

bir örnek MS Grafikler için buraya vardır: örneği nesnelere veri sınıflarını ekleme ve kaydetme hakkında Need help on Problem in using c# .net 4.0 realtime chart in windows form application

+0

Yardımlarınız için çok teşekkürler. Sanırım önerdiğin mantığı aldım. Ama yine de bitmapler ve grafikleri yazılımımdaki aynı yerde nasıl çalabileceğimi anlayamıyorum.Sayısal verileri yükleyebilen ve ardından çizelge ve bitmap işlevlerine tekrar ekleyebilen bir oynatma kontrolü ekliyor mu? Yani şimdi benzer bir oynatma aracı alabilir miyim? –

+0

Anlıyorum, bir film gibi animasyonlarla oynamak ister misin? Normal kullanıcı sadece perfmondaki gibi ilgi çekici verileri yaklaştırır. Küçük bir örnek ekleyeceğim. –

İlgili konular