S

Onbaşı
05 Şubat 2015
Tarihinde Katıldı
Takip Ettikleri
0 üye
Görüntülenme (?)
31 (Bu ay: 0)
Gönderiler Hakkında
S
7 yıl
laptop ekranında çıkan yatay çizgiler
laptobum 6 seneyi doldurdu. ekranda belli aralıklarla yatay çizgi oluşuyor. bazen çizgi çıktığında hafiften bir ekran titremesi de oluşuyor. Sorun ekran kartında mı diye düşündüm. Evdeki monitöre bağladım. monitörde herhangi bir problem çıkmadı . Peki sorun ne olabilir. Yardımlarınız için şimdiden teşekkürler.
S
9 yıl
Sanal seri port üzerinden PIC16F877A ile C# haberleşmesi
Bu projede sıvı seviyesi ölçmüştüm. Yani analog bir değeri c#' da bir formda yazdırdım. Sanal com port olarak https://www.eltima.com/products/vspdxp/ bunu indirebilirsiniz.

Peki bu programı nasıl kullanıcaz?
Şimdi proteusta RS232ye sağ tıklayıp hangi portta olduğunu kontrol edin. Örneğin COM2'de olsun bir sonraki portu COM3 olarak seçelim (yani C#'a veri aktaracağımız port) add pair butonuna bastığınızda hazır olmuş olacak.

Eğer gerçek hayatta denemek isterseniz bu programa gerek kalmıyor zaten tek ihtiyacınız rs232' yi usbye dönüştüren yada Prolific PL2303 USB-TTL almanız gerekiyor. rs 232 çok kullanılmadığı için ve bağlantısı kolay olduğu için usb ttl dönüştürücü almanızda fayda var. Bide bu aygıtları kullanırken hangi portta olduğunu aygıt yöneticisinden kontrol etmeyi unutmayın. Örneğin sizin portunuz COM3 de ama siz programda COM5 yazarsanız çalışmaz.

C# kodları
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO.Ports;

namespace WindowsFormsApplication4
{
public partial class Form1 : Form
{
SerialPort picport = new SerialPort("COM5", 9600, Parity.None, 8, StopBits.One);

public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)

{

}

private void timer1_Tick(object sender, EventArgs e)
{

label4.Text = picport.ReadExisting();

}

private void button1_Click(object sender, EventArgs e)
{
timer1.Enabled = true;
picport.Open();
}

private void button2_Click(object sender, EventArgs e)
{
picport.Close();
}



}

}


Pic kodlarını xc8 formatında (eski adıyla hitech) yazdım.

#include <xc.h>
#include <pic16f877a.h>
#define _XTAL_FREQ 4000000
#pragma config FOSC = HS
#pragma config WDTE = OFF
#pragma config PWRTE = OFF
#pragma config BOREN = ON
#pragma config LVP = OFF
#pragma config CPD = OFF
#pragma config WRT = OFF
#pragma config CP = OFF

char UART_Init(const long int);
void UART_Write(char);
void UART_Write_Text(char*text);
void UART_numara(unsigned int num);

void main(void)
{
int digital=0;

ADCON0bits.ADCS0=0; // analog saat kaynak seçimi
ADCON0bits.ADCS1=1; // FOSC/8
ADCON1bits.ADCS2=0; //
ADCON0bits.ADON=1; // A/D on biti
ADCON1bits.PCFG0 =0; //Analog Digital konfigürasyon kontrol bitleri
ADCON1bits.PCFG1 =0; //Tüm analog pinler açıldı
ADCON1bits.PCFG2 =0;
ADCON1bits.PCFG3 =0;
ADCON1bits.ADFM =1; // Bitler sağa yaslandı
ADCON0bits.CHS2=0; // AN1 kanalı seçildi
ADCON0bits.CHS1=0;
ADCON0bits.CHS0=1;

UART_Init(9600);

while (1){

ADCON0bits.GO =1; // ADC Çevrimine başlandı
__delay_us(20);
while(ADCON0bits.GO_nDONE); //bitene kadar bekle

digital = ADRESH*256 + ADRESL;
digital = (digital/10)-25;
UART_numara(digital);
UART_Write_Text("mm");
UART_Write_Text("\n");
__delay_ms(200);

}
}

char UART_Init(const long int baudrate)
{
unsigned int x;

x = (_XTAL_FREQ - baudrate*16)/(baudrate*16); // Yüksek baudrate ayarı SPBRG için
BRGH = 1; //Yüksek baudrate ayarı seçildi

if(x<256)
{
SPBRG = x;
SYNC = 0; //Setting Asynchronous Mode, ie UART
SPEN = 1; //Seri portu açma
TRISC7 = 1; //TRISC7 portları ayarlandı
TRISC6 = 1; //TRISC6
CREN = 1; //Sürekli veri alma
TXEN = 1; //Göndermeyi aktif etme
return 1;
}
return 0;
}

void UART_Write(char data)
{
while(!TRMT); // veri gelene kadar bekle 1 olduğunda veri yollar
TXREG = data; // Gönderme bitine veriler aktarıldı
}

void UART_Write_Text(char *text)
{
int i;
for(i=0;text[i]!='\0';i++)
UART_Write(text[i]);
}

void UART_numara(unsigned int num)
{

UART_Write((num/10000)+0x30);
num=num%10000;

UART_Write((num/1000)+0x30);
num=num%1000;

UART_Write((num/100)+0x30);
num=num%100;

UART_Write((num/10)+0x30);

UART_Write((num%10)+0x30);
}


< Resime gitmek için tıklayın >< Resime gitmek için tıklayın >
S
10 yıl
usb to ttl ve pic yardım
elimde usb ttl dönüştürücü var. seri haberleşme ile c# da program yazmak istiyorum. internette genelde rs232 usb dönüştürücüleri var fakat pahalı geldi ve bide rs232 çok yer kaplıyor. sorum şu usb nin ttl çıkışında rx/tx uçları bulunuyor. ben bunları kullanarak direk picle veri alışverişini yapabilir miyim? yoksa illa rs232 koyup max232 entegresiyle çalıştırmam gerekli
< Resime gitmek için tıklayın >
S
10 yıl
c# sürekli gelen veriyi yazdırma
elimde analog bir veri var ve sürekli değişiyor. bunu labela nasıl aktarabilirim. bi nevi label click işlemini click yapmadan yapıcak
S
10 yıl
exe uzantılı bir programdan 3d görüntüleri nasıl çekebilirim?
elimde bir adet program var exe uzantılı. ben bu programdan 3 boyutlu olan logoları çekmek istiyorum. bunu nasıl yapabilirim?
S
10 yıl
LCD de step motor adım saydırma (xc8)
 
#include <xc.h>
#define RS RB0
#define RW RB1
#define E RB2
#define _XTAL_FREQ 4000000

void lcdKomut (unsigned char);
void lcdVeri (char);
void intlcdVeri (int);
void bekle (unsigned int);

void main(void)
{
int birler;
int onlar; // basamak değişkenleri tanımlandı
int yuzler;

char b;
char o; // lcd ye yazdırılacak basamak değişkenler tanımlandı
char y;

TRISB=0b00110000;
TRISD=0; // 4 ve 5 giriş, diğer pinler çıkış olarak tanımlandı
E=0;

int i;
int g; // step motoru ileri geri saydırmak için değişkenler tanımlandı

TRISC=0;
PORTC=0;// step motorun bulunduğu c portu sıfırlandı ve çıkış olarak tanımlandı

char adim[]={0b0001,0b0011,0b0010,0b0110,0b0100,0b1100,0b1000,0b0001}; // step motor adım saydırmak için adım verileri yazıldı

lcdKomut(0x0C);// ekran açık, kursor kapalı, yanıp sonme yok
lcdKomut(0x38);
// ekran satır ayarları yapıldı
lcdKomut(0x83);


while(RB4==0) // Eğer RB4 == 0 ise aşağıdakı işlemlere izin verilecek
{

PORTC=adim[i];
i=i+1; // step adım saydırma işlemi
if(i>=8)
i=0;
bekle(100);

if(birler==9&&onlar==9&&yuzler==9){// döngü oluşturuldu. 000

birler=-1;
onlar=0; // bir dahaki sayma işlemi için basamaklar sıfırlandı.
yuzler=0;
y=yuzler+'0'; // sayı değişkeni character değişkenine çevrildi...
o=onlar+'0';

birler=birler+1;
b=birler+'0'; // sayı değişkeni character değişkenine çevrildi...
lcdVeri('A');
lcdVeri('D');
lcdVeri('I');
lcdVeri('M');
lcdKomut (0xC2); //2. satır 3. sıra // Yazdırma işlemi yapıldı.
lcdVeri('S');
lcdVeri('A');
lcdVeri('Y');
lcdVeri('I');
lcdVeri('S');
lcdVeri('I');
lcdVeri('=');
lcdVeri(y);
lcdVeri(o);
lcdVeri(b);

bekle(100);
}
else{
if(onlar==9&&birler==9){
onlar=-1;
yuzler=yuzler+1; // Eğer onlar ve birler basamağı 9 ise yüzler basamağı 1 sayı arttırıldı.
y=yuzler+'0';
}

if(birler==9){
birler=-1;
onlar=onlar+1; // birler basamağı 9 ise onlar basamağı 1 sayı arttırıldı.
o=onlar+'0';
}

birler=birler+1;
b=birler+'0'; // sayı değişkeni character değişkenine çevrildi...
lcdVeri('A');
lcdVeri('D');
lcdVeri('I');
lcdVeri('M');
lcdKomut (0xC2); //2. satır 3. sıra // sürekli sayı sayıldığı bölge.
lcdVeri('S');
lcdVeri('A');
lcdVeri('Y');
lcdVeri('I');
lcdVeri('S');
lcdVeri('I');
lcdVeri('=');
lcdVeri(y);
lcdVeri(o);
lcdVeri(b);
bekle (100);
}
}
while(RB5==0) // geri sayı sayma bölgesi
{
if(birler==0&&onlar==0&&yuzler==0){// Eğer basamaklar 000 ise geri sayılmasına izin verilmedi.
break;
}
else{// değilse geri saymaya devam edecek.
PORTC=adim[g];
g=g-1;
bekle(100); // Step motoru geri adım attırma bölgesi.
if(g<=0)
g=8;
}

if(onlar==0&&birler==0){// Eğer birler basamağı 0 ve onlar basamağı 0 ise yuzler basamağı 1 sayı azaltıldı.
onlar=10;
yuzler=yuzler-1;
y=yuzler+'0';
}

if(birler==0){// Eğer birler basamağı 0 ise onlar basamağı 1 sayı azaltıldı
birler=10;
onlar=onlar-1;
o=onlar+'0';
}


birler=birler-1;
b=birler+'0'; // sayı değişkeni character değişkenine çevrildi...
lcdVeri('A');
lcdVeri('D');
lcdVeri('I');
lcdVeri('M');
lcdKomut (0xC2); //2. satır 3. sıra // sürekli geri sayma bölgesi
lcdVeri('S');
lcdVeri('A');
lcdVeri('Y');
lcdVeri('I');
lcdVeri('S');
lcdVeri('I');
lcdVeri('=');
lcdVeri(y);
lcdVeri(o);
lcdVeri(b);
bekle(100);
}
}


void lcdKomut (unsigned char k){// lcd özelliklerin ayarlamak için fonksiyon oluşturuldu.
PORTD=k;
RS=0;
RW=0;
E=1; // düşen kenarda yazacak
bekle(1);
E=0;
}

void lcdVeri(char veri){// lcd ye veri yazmak için fonksiyon oluşturuldu.
PORTD=veri;
RS=1;
RW=0;
E=1;
bekle(1);
E=0;
}
void bekle(unsigned int sn){// Bekleme fonksiyonu oluşturuldu.
unsigned int i,j;
for (i=0;i<sn;i++)
for (j=0;j<135;j++);
}



aşağıdaki linkte proteus similasyonu bulunmaktadır
http://s6.dosya.tc/server5/6dagb8/asil_kod.rar.html
< Resime gitmek için tıklayın >
S
10 yıl
Sql server ile C# tabanında yemek menüsü uygulaması
using System; 
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;


namespace gösterme
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{

}

static string conString = (@"server=.\SQL_2012; database=yemekmenu; Trusted_Connection=yes");
SqlConnection baglanti = new SqlConnection(conString); // database bağlanmak için gerekli kodlar yazıldı


private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
{

label7.Text = dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();
textAnayemek.Text = dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();
textArayemek.Text = dataGridView1.Rows[e.RowIndex].Cells[3].Value.ToString();// datagridde tıklanan veriler text boxlara yazıldı
textTatli.Text = dataGridView1.Rows[e.RowIndex].Cells[4].Value.ToString();
textIcecek.Text = dataGridView1.Rows[e.RowIndex].Cells[5].Value.ToString();

}

private void button1_Click(object sender, EventArgs e) // kayıt butonu
{
int a=0;

if (label7.Text == "" || textAnayemek.Text == "" || textArayemek.Text == "" || textTatli.Text == "" || textIcecek.Text == "")

MessageBox.Show("Lüften tarihi seçiniz yada\nverileri girdiğinizden emin olun.");

else
{
baglanti.Open();

string kayit = "SELECT * from menu where tarih=@tarih"; // girilen tarih baz alınarak veriler databaseden çekildi.
SqlCommand ara = new SqlCommand(kayit, baglanti);// veritabanı üzerinde sorgulama, ekleme, güncelleme, silme işlemlerini yapmak için kullanılmaktadır.
ara.Parameters.AddWithValue("@tarih", label7.Text); // Parametremize Form üzerinde ki kontrollerden girilen veriyi aktarıyoruz.
SqlDataAdapter da = new SqlDataAdapter(ara);// bağlantı yapısı ile veri arasında köprü vazifesi görür.
SqlDataReader dr = ara.ExecuteReader();

if (dr.Read())
{
MessageBox.Show("Bu tarihte kayıt var");
a = 1;
label7.Text = "";
}

baglanti.Close();

if (a != 1)
{

baglanti.Open();

string ekle = "insert into menu(tarih,anayemek,arayemek,tatli,icecek)values (@tarih,@anayemek,@arayemek,@tatli,@icecek)";
SqlCommand komut = new SqlCommand(ekle, baglanti);

komut.Parameters.AddWithValue("@tarih", label7.Text);
komut.Parameters.AddWithValue("@anayemek", textAnayemek.Text);
komut.Parameters.AddWithValue("@arayemek", textArayemek.Text);
komut.Parameters.AddWithValue("@tatli", textTatli.Text);
komut.Parameters.AddWithValue("@icecek", textIcecek.Text);
komut.ExecuteNonQuery();

MessageBox.Show("kayıt eklendi");

label7.Text = "";
textAnayemek.Text = "";
textArayemek.Text = "";
textTatli.Text = "";
textIcecek.Text = "";
baglanti.Close();


}
baglanti.Open();

SqlDataAdapter daa = new SqlDataAdapter("Select * From menu", baglanti);// menu adındaki tablo databaseden çekildi.
DataSet ds = new DataSet();// bir kez bağlandıktan sonra veriyi alır ve bağlantıyı keser.
daa.Fill(ds, "menu"); // datasetten alınan veriler dolduruldu
DataTable menu = new DataTable();// doldurulan veriler menu adında bir datatable a atandı
daa.Fill(menu); // menu adındaki değişkene veriler dolduruldu
dataGridView1.DataSource = menu;// menu adındaki değişkene atanan veriler datagride aktarılarak gösterilmesi sağlandı.
baglanti.Close();
}
}

private void button2_Click(object sender, EventArgs e) // silme butonu
{

baglanti.Open(); // server bağlantısı açıldı
string secme = "SELECT * from menu where tarih=@tarih"; // Girilen tarihi baz alarak o tarihteki bilgiler çekildi
SqlCommand secmeKomutu = new SqlCommand(secme, baglanti);// veritabanı üzerinde sorgulama, ekleme, güncelleme, silme işlemlerini yapmak için kullanılmaktadır.
secmeKomutu.Parameters.AddWithValue("@tarih", label7.Text);// tarihe textboxtan girilen değer atandı
SqlDataAdapter da = new SqlDataAdapter(secmeKomutu);// bağlantı yapısı ile veri arasında köprü vazifesi görür.
SqlDataReader dr = secmeKomutu.ExecuteReader();// DataReader ile Tarihteki verileri veritabandan belleğe aktarıldı
if (dr.Read())// okuma şartı sağlandı
{
string date = dr["anayemek"].ToString() + " " + dr["arayemek"].ToString() + " " + dr["tatli"].ToString() + " " + dr["icecek"].ToString();
dr.Close();// DataReader ile okunan içeriği string değişkenlere atandı ve datareader kapatıldı.
DialogResult durum = MessageBox.Show(date + " Silmek istediğinizden eminmisiniz. ", "Silme Onayı", MessageBoxButtons.YesNo);//kullanıcıya onay penceresinde soru sorularak onay vermesi istendi.
if (DialogResult.Yes == durum)// Eğer evet seçilmişse kaydı silecek kodlar çalıştırılır.
{
string silme = "DELETE from menu where tarih=@tarih";// girilen tarihteki menüyü siler.
SqlCommand silmeKomutu = new SqlCommand(silme, baglanti);// veritabanı üzerinde sorgulama, ekleme, güncelleme, silme işlemlerini yapmak için kullanılmaktadır.
silmeKomutu.Parameters.AddWithValue("@tarih", label7.Text);// girilen tarihle textboxtaki tarih arasında ilişkilendirir.
silmeKomutu.ExecuteNonQuery();//Yazdığımız Verileri Çalıştıran ve İşleve Sokan parametre

MessageBox.Show("Kayıt Silindi.");

label7.Text = "";
textAnayemek.Text = "";
textArayemek.Text = ""; // bir sonraki işlemler için textboxlar boşaltıldı.
textTatli.Text = "";
textIcecek.Text = "";

}
}

else
MessageBox.Show("Kayıt Bulunamadı.");// kayıt bulunamadığı durumlarda kullanıcı bilgilendirildi
baglanti.Close();

SqlDataAdapter daa = new SqlDataAdapter("Select * From menu", baglanti);// menu adındaki tablo databaseden çekildi.
DataSet ds = new DataSet();// bir kez bağlandıktan sonra veriyi alır ve bağlantıyı keser.
daa.Fill(ds, "menu"); // datasetten alınan veriler dolduruldu
DataTable menu = new DataTable();// doldurulan veriler menu adında bir datatable a atandı
daa.Fill(menu); // menu adındaki değişkene veriler dolduruldu
dataGridView1.DataSource = menu;// menu adındaki değişkene atanan veriler datagride aktarılarak gösterilmesi sağlandı.
baglanti.Close();

}


private void button3_Click(object sender, EventArgs e) // listele butonu
{
baglanti.Open();

SqlDataAdapter da = new SqlDataAdapter("Select * From menu", baglanti);// menu adındaki tablo databaseden çekildi.
DataSet ds = new DataSet();// bir kez bağlandıktan sonra veriyi alır ve bağlantıyı keser.
da.Fill(ds, "menu"); // datasetten alınan veriler dolduruldu
DataTable menu = new DataTable();// doldurulan veriler menu adında bir datatable a atandı
da.Fill(menu); // menu adındaki değişkene veriler dolduruldu
dataGridView1.DataSource = menu;// menu adındaki değişkene atanan veriler datagride aktarılarak gösterilmesi sağlandı.
baglanti.Close();
}

private void button4_Click(object sender, EventArgs e) // güncelle butonu
{




if (label7.Text == "" || textAnayemek.Text == "" || textArayemek.Text == "" || textTatli.Text == "" || textIcecek.Text == "")

MessageBox.Show("Lüften tarihi seçiniz yada\nverileri girdiğinizden emin olun.");

else
{
baglanti.Open();
string kayit = " update menu set anayemek=@anayemek,arayemek=@arayemek,tatli=@tatli,icecek=@icecek where tarih=@tarih";// girilen tarih baz alınarak update edilecek parametler kayit adındaki değişkene atandı.
SqlCommand guncelle = new SqlCommand(kayit, baglanti);// veritabanı üzerinde sorgulama, ekleme, güncelleme, silme işlemlerini yapmak için kullanılmaktadır.

guncelle.Parameters.AddWithValue("@tarih", label7.Text);
guncelle.Parameters.AddWithValue("@anayemek", textAnayemek.Text);
guncelle.Parameters.AddWithValue("@arayemek", textArayemek.Text); //Parametrelerimize Form üzerinde ki kontrollerden girilen verileri aktarıyoruz.
guncelle.Parameters.AddWithValue("@tatli", textTatli.Text);
guncelle.Parameters.AddWithValue("@icecek", textIcecek.Text);

guncelle.ExecuteNonQuery();//Yazdığımız Verileri Çalıştıran ve İşleve Sokan parametre


label7.Text = "";
textAnayemek.Text = "";
textArayemek.Text = ""; // bir sonraki işlemler için textboxlar boşaltıldı.
textTatli.Text = "";
textIcecek.Text = "";

MessageBox.Show("Bilgiler güncellendi.");

SqlDataAdapter daa = new SqlDataAdapter("Select * From menu", baglanti);// menu adındaki tablo databaseden çekildi.
DataSet ds = new DataSet();// bir kez bağlandıktan sonra veriyi alır ve bağlantıyı keser.
daa.Fill(ds, "menu"); // datasetten alınan veriler dolduruldu
DataTable menu = new DataTable();// doldurulan veriler menu adında bir datatable a atandı
daa.Fill(menu); // menu adındaki değişkene veriler dolduruldu
dataGridView1.DataSource = menu;// menu adındaki değişkene atanan veriler datagride aktarılarak gösterilmesi sağlandı.
baglanti.Close();
}
}

private void button6_Click(object sender, EventArgs e) // menüye göster butonu
{
baglanti.Open();
string secme = "SELECT * from menu where tarih=@tarih";// girilen tarih baz alınarak veriler databaseden çekildi ve secme adındaki değişkene atandı
SqlCommand secmeKomutu = new SqlCommand(secme, baglanti);// veritabanı üzerinde sorgulama, ekleme, güncelleme, silme işlemlerini yapmak için kullanılmaktadır. (bu satır sil butonu için kullanıldı)
secmeKomutu.Parameters.AddWithValue("@tarih", label1.Text); // Parametremize Form üzerinde ki kontrollerden girilen veriyi aktarıyoruz.
SqlDataAdapter da = new SqlDataAdapter(secmeKomutu);// bağlantı yapısı ile veri arasında köprü vazifesi görür.
SqlDataReader dr = secmeKomutu.ExecuteReader();
if (dr.Read())// veriler okunursa aşağıdaki kodlar çalışır.
{
string date = "Ana yemek = " + dr["anayemek"].ToString() + "\nAra yemek = " + dr["arayemek"].ToString() + "\nTatlı = " + dr["tatli"].ToString() + "\nİçecek = " + dr["icecek"].ToString();
//okunan veriler date adındaki değişkene atandı
MessageBox.Show("Günün Menüsü\n\n"+date);// messageBox ile günün menüsü gösterildi.
dr.Close();
}
else
MessageBox.Show("Kayıt Bulunamadı.");// kayıt bulamaması halinde kullanıcı bilgilendirildi.
baglanti.Close();
label1.Text = "";
}

private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
{

}

private void label7_Click(object sender, EventArgs e)
{

}

private void monthCalendar1_DateChanged_1(object sender, DateRangeEventArgs e)
{

label7.Text=e.Start.ToShortDateString();
baglanti.Open();

string kayit = "SELECT * from menu where tarih=@tarih";
SqlCommand ara = new SqlCommand(kayit, baglanti);
ara.Parameters.AddWithValue("@tarih", label7.Text);
SqlDataAdapter da = new SqlDataAdapter(ara);
SqlDataReader dr = ara.ExecuteReader();
if (dr.Read())
{
label7.Text = dr["tarih"].ToString();
textAnayemek.Text = dr["anayemek"].ToString();
textArayemek.Text = dr["arayemek"].ToString();
textTatli.Text = dr["tatli"].ToString();
textIcecek.Text = dr["icecek"].ToString();
}
else
{


textAnayemek.Text = "";
textArayemek.Text = ""; // bir sonraki işlemler için textboxlar boşaltıldı.
textTatli.Text = "";
textIcecek.Text = "";
}
baglanti.Close();


}

private void groupBox2_Enter(object sender, EventArgs e)
{

}

private void monthCalendar2_DateChanged(object sender, DateRangeEventArgs e)
{
label1.Text=e.Start.ToShortDateString();
}


}
}


aşağıdaki linkte database, kod ve form uygulamaları bulunmaktadır.
http://s6.dosya.tc/server5/jr3fzh/yemek_menu.rar.html


< Resime gitmek için tıklayın >
S
11 yıl
3x3x3 led küpe yardım
Digital elektronik dersinde proje ödevi olarak 3x3x3 led küpü seçtim. 74hc4020 ile kaç çeşit animasyon yapabilirim. Yardımlarınız için şimdiden teşekkürler.
S
11 yıl
Yeni multimetre alacağım marka önerebilir misiniz?
Şuanda üniversitede okuyorum 5 tl ye aldığım multimetre 6 yıl boyunca kulladım. Birinin yanlış kullanımı nedeniyle bozuldu. Yeni multimetre almaya karar verdim. Tavsiyelerinizi söylerseniz sevinirim...
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.