serialport kullanan bir projem var serialport kompenantını nereye koyabilirim..

Başlatan forumsad, 06 Ocak 2013, 08:30:13

forumsad

arkadaşlar seri port iletişimi için serialport kompenantını kullanacağım ama işlemleri class kullanarak yapmak istiyorum form kullanmak istemiyorum
bu gibi durumlar için delphide datamodul vardı kompenantları oraya ekleyip istediğin formdan ulaşarak işlerini yaptırıyordun

c# için benzer bir özellik var mı?

saygılarımla..

OG

Formun görünürlüğünü (şeffaflığını) 0 yapabilirsin. 0-255 arası olabilir.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

forumsad


CoşkuN

Serialport sınıfını da herhangi bir sınıf gibi kullanılıyor olması lazım, forma gerek yok diye biliyorum: http://msdn.microsoft.com/tr-tr/library/system.io.ports.serialport.aspx
Sayfanın sonundaki örnekte bir konsol uygulaması yapılmış

Kabil ATICI

Ekranın sağ altındaki gibi programcıklar gibi çalışan bir program oluşturabilirsin. Çünkü seri port ve programın için bazı ayarlar gerekebilir. Programına ulaşmak için kolaylık sağlayacaktır. Böylece hem formun olur hem olmaz.

Yada formun olur ama formunu küçülmüş bir şekilde ekran dışına atayabilirsin.
ambar7

OG

Alıntı yapılan: ambar7 - 06 Ocak 2013, 14:56:31
Ekranın sağ altındaki gibi programcıklar gibi çalışan bir program oluşturabilirsin. Çünkü seri port ve programın için bazı ayarlar gerekebilir. Programına ulaşmak için kolaylık sağlayacaktır. Böylece hem formun olur hem olmaz.
VB deki ismi NOTIFYICON
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

fatih6761

SerialPort, C# da sadece bir sınıftır. Bu sınıf, DesignerVisible özelliği eklenerek form editöründen eklenebilir durumdadır. Yani siz forma SerialPort komponentini eklediğinizde sınıfın örneği, forma değil, doğrudan koda eklenir. Sadece eklendiği dosya farklıdır. Yapacağınız tek şey C# kodunda kullanacağınız yere gelip şunu eklemektir:
//...
System.IO.Ports.SerialPort seriPort = new System.IO.Ports.SerialPort();
// burada özellikleri elle girmek zorundasınız.
seriPort.BaudRate = xxx
seriPort.PortName = xxx
//...

OG

Alıntı YapSerialPort, C# da sadece bir sınıftır.
Component değilmi?
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

fatih6761

@OG hocam, dediğim gibi, temelden alırsak;
C#, çoğunlukla C & C++ dan türemiş bir .Net dilidir. C++ gibi C#'da OOP yani nesne yönelimli prg. dilidir. C# 'da da C++ gibi Class(Sınıf)lar vardır.
Windows Forms, C# dili ile de kullanılabilen bir Proje Türüdür. Dolayısıyla Windows Forms terimleri ile C# terimleri farklıdır. Class, Struct, Pointer, Integer, namespace, vs... bunlar C# dili terimlerindendir. Component, Form, MdiForm, Child, vs.. bunlar ise Windows Forms terimleridir ve Visual C#, VB.Net ve Visual C++ için aynıdır. SerialPort, derleyici için sadece bir sınıftır ve yine derleyici için, görsellik diye birşey yoktur. Kodları alır, derler. Görsel kısım, işletim sisteminin işidir. Ekranda gördüğünüz bütük pencereler işletim sistemi fonksiyonlarıyla oluşturulur. Bu işi, Visual C#'da System.Windows.Forms ad uzayı altında toplanmış sınıflar halleder. Form Editor penceresinde gördüğünüz form da aslında, System.Windows.Forms.Form sınıfının bir örneği olan bir nesnedir. Formunuza ait Designer dosyasında bunu açık bir şekilde görebilirsiniz. Component dediğimiz nesneler, Form sınıfı örneğine ait Components dizisinde tutulur. Bu dizi içindeki elemanlar işletim sistemi tarafından Child Controls olarak tanınır. Uygun olay filtreleyicilerine bildirilir. Dolayısıyla Component dediğiniz nesneler, başına birtakım Attribute'ler ( özellikler ) eklenmiş sınıfların örnekleridir.
Şu şekilde özellikler Properties penceresini etkiler:
Attribute
Description
AmbientValueAttribute[/font][/font][/color]Specifies the value for this property that causes it to acquire its value from another source, usually its container.
[/color]BrowsableAttributeDetermines whether the property is visible in the Property Browser.
[/color]CategoryAttributeTells the Property Browser which group to include this property in.
[/color]DescriptionAttributeProvides text for the Property Browser to display in its description bar.
[/color]DesignOnlyAttributeSpecifies that the design-time value of this property is serialized to the form's resource file. This attribute is typically used on properties that do not exist at run time.
[/color]MergablePropertyAttributeAllows this property to be combined with properties from other objects when more than one are selected and edited.
[/color]ParenthesizePropertyNameAttributeSpecifies whether this property should be surrounded by parentheses in the Property Browser.
[/color]ReadOnlyAttributeSpecifies that this property cannot be edited in the Property Browser.
Açıklamalar karşılarında bulunuyor. Form Editor de görülebilen Component'ler ise genelde UserControl veya başka bir görülebilir sınıftan ( Panel, Button, TextBox vs... ) kalıtılmıştır. Bu şekilde form editörüde işletim sistemi gibi formu ilkendirir ama ilklenme peşinde SuspendLayout tetikleyerek formu durdurur. Bu sırada siz "dizayn" gerçekleştirirsiniz. Editör için bunlar, Componentlerdir ama CSC ( C# compiler ) için sadece x ad uzayında bulunan y nesnesidir. VB için de durum böyledir.
Umarım açıklayıcı olmuştur.


forumsad

diyelimki 2 adet formunuz var birisi form1 diğeri form2

serialport olayını form2 ye yerleştirdin..

programı çalıştırdınız form1 ekrana geldi....şimdi

seri portdan bir bilği geldiği anda form2 gerekeni yaparmı yoksa show edip sonra gizlemelimiyiz..


saygılarımla

OG

show etmene gerek yok, o işini yapar, disable etmedikçe.
yanlız değişkenler (VB için) public olmalı ki alınan değerler diğer formlarda da değerlendirilebilsin.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Kabil ATICI

Her şeyi tek formda yapabilirsin. Tasarladığın Her form u grup yapıp bunları tek form üzerinde sadece grupları göster/gizle ile istediğin gibi yönetebilirsin.
ambar7