Visual Studio 2010.Net C# Programa giriş ve Çalıştırma. Program Çalışması

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Visual Studio 2010.Net C# Programa giriş ve Çalıştırma. Program Çalışması"

Transkript

1 Programa giriş ve Çalıştırma Program Çalışması 2

2 -- Bu exe file her Windows makineda eskiden olduğu gibi çalışmaz. Mutlaka.net yüklü olmalıdır. 3

3 Mesaj Verme (Messagebox.Show) ve kütüphane Ekleme ( using ) 1. yöntem: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; //using System.Windows.Forms; namespace WindowsFormsApplication1 public partial class Form1 : System.Windows.Forms.Form public Form1() InitializeComponent(); private void button1_click(object sender, EventArgs e) System.Windows.Forms.MessageBox.Show("lutfen isimleri boş bırakmayınız "); II.Yöntem; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 public partial class Form1 : Form public Form1() 4

4 InitializeComponent(); private void button1_click(object sender, EventArgs e) MessageBox.Show("lutfen isimleri boş bırakmayınız "); Kodlamada Açıklama Kullanma Bir satır : // Çoklu satır : /* */ private void button2_click(object sender, System.EventArgs e) // mesaj kullanma /* *********************************************** ******** using ile kutuphane ekleme ****** ********* ve normal kullanım ****** */ MessageBox.Show("lutfen isimleri boş bırakmayınız"); 5

5 Kod komutlarını kolay yazma Boş satırda control space : Bütün kod komutları gelir Bir iki harf yazıp control space : Baglantılı kod komutları gelir Bir komut yazdıktan sonra. yazma : Baglantılı diğer komutlar gelir. Penceredeki komutlara Mouse, ok veya tab tuşu ile gelerek; enter veya tab tuşuna basarız. Using siz kullanımda nokta aktif olur. System.Windows.Forms.MessageBox.Show("faruk"); MessageBox.Show("ahmet"); - aktif olur - aktif olmaz Komutların ilk harfi küçük yazılmasında : Küçük olarak yazılırsa control-space ile yinede komutlar gelir. Tab veya Enter yuşu ile ilk harf büyütülmüş hale gelir. 6

6 Pencereler Properties : forms,button,texbox gibi objelerin özelliklerini değiştirme Events : Mouse a tıklayınca,uzerine gidince veya enter a basınca işlem yapma Toolbox : button, textbox gibi objeleri ekleme Solution : soluşın,proje ve forms kontrolu Server Explorer : Sql Server ile baglantı menusu Task list : Run veya derlemede hatalı satırları görme Araç Cubukları ( View-Toolbars ile gelir. Standart, Text Editor gibi) : Pencereleri getirme 7

7 Events Kullanma 8

8 Form, Code,Sqlserver baglantı, form butonları penceresini getirme Yapılmış bir projeye girdiğimizde bu ekranlar gelmeyebilir. Veya biz yanlışlıkla silmiş olabiliriz. 9

9 Program yazma yöntemleri Textbox bir objenin dış rengini değiştirme 1) Properties penceresinden 2) Kod yazma ile private void button1_click(object sender, EventArgs e) textbox1.backcolor = Color.Red; Textbox bir objenin Ekranda gözükmemesi Kod yazma ile private void button1_click(object sender, EventArgs e) textbox1.visible= false; 10

10 Değişkenler Tamsayı Değişkenler Aldıgı sayı aralığı Açıklama byte byte x ; byte y=100; sbyte sbyte x; sbyle y= -110; short sbyte x; sbyle y= -3200; ushort sbyte x; sbyle y= 2000; int ( sbyte x; sbyle y= ; uint sbyte x; sbyle y= ; Real Sayı değişkenler float Normal real sayı tipi sbyte x; sbyle y= ; Double Geniş real sayı tipi sbyte x; sbyle y= ; Long Çokgeniş sayı tipi sbyte x; sbyle y= ; Alfasal değişkenler string string adres; string adi= Faruk ; bool True ve false tipidir Bool medeni; Bool erkek=true; Özellikler Değişkenleri bir veya birden fazla arasına virgül koyarak tanımlayabilir.direk normal veya sabit giriş yapabilir String degerler cift tırnak arasında yazılır.. noktalı virgül ile işlem satırın bitişini saglarız. ; deger aktarma delphi de iki nokta ve eşittir ( := ).Burada ise sadece eşittir ( = ) kullanılır. Matematiksel işlemlerde Math.Pow kullanılır.sayıyı kendisiyle çarpar.. int ucret=10; MessageBox.Show(Math.Pow(ucret,1).ToString()); // 10 MessageBox.Show(Math.Pow(ucret,2).ToString()); // 100 MessageBox.Show(Math.Pow(ucret,3).ToString()); // 1000 const double pi=3.14; -- sabit tanımlama int yas=25; -- direk tanımlayıp giriş String ulke= Türkiye ; 11

11 int a; int b,c; -- iki değişken tanımlama string adi,soyad,adres; - iki değişken tanımlama double net; Real değişken tanımlama String t="100"; b=convert.toint32(textbox1.text); // standart integer a cevirme net=a+double.parse(t); // real sayı için cevirme b=a+int.parse(t); // integer için cevirme textbox4.text=a.tostring(); // string e cevirme b=convert.todouble(textbox1.text); // Real Sayıya cevirme adres=" Kervansaray mah. Dogs evleri E blok";//string deger giriş 12

12 Uygulamalar Textbox1.text değişkeni integer a cevrim yaparak a sayısı ve 5 ile toplama ve toplam degerin textbox4.text te yazılması ve mesaj olarak verilmesi. Đnteger sayının textbox4 te veya messagebox ile yazılması için string dönüşmesi gereklidir. MessageBox.Show(b.ToString()); Messagebox ta birden fazla alfasal degişkeni yazdırma için aralarında + kullanılır. veya string olarak birleştirmek için yine + kullanılır. Textbox4.Text=adi + +soyad; private void button1_click(object sender, System.EventArgs e) int a; int b,c; a=1000; b=5+a+convert.toint32(textbox1.text); // -->integer a cevirme textbox4.text=a.tostring(); // - string e cevirme MessageBox.Show(b.ToString()); MessageBox.Show(b.ToString()+" toplam degerdir"); Real Sayıya cevirme private void button2_click(object sender, System.EventArgs e) int a; Double b; a=1000; b=5+a+convert.todouble(textbox1.text);//real sayıya cevirme textbox4.text=a.tostring(); MessageBox.Show(b.ToString()); MessageBox.Show(b.ToString()+" toplam degerdir"); String deger giriş,birleştirme,mesaj olarak yazdırm private void button3_click(object sender, System.EventArgs e) String adres; adres=" Kervansaray mah. Dogs evleri E blok no:7"; textbox4.text=adres+textbox1.text; MessageBox.Show(textBox4.Text); Tarih formatına ekranda yazdırma String deger="20/09/2005"; DateTime tarih,tarih2; tarih=datetime.parse(deger); // stringi tarih formatına ceviriyor tarih2=datetime.parse(textbox1.text); textbox4.text=tarih.tostring(); 13

13 Event, Form ve Formlar arasında Değişken kullanımı Bir event içersinde kullanılan değişkenler sadece o event içersinde geçerlidir. bir değişkeni button1 event ında, iki değişkeni button2 event ında kullanılır. Private ile event lar dışında tanımladıgımız değişkeni ( fsayi) bir form içersinde her event ta kullanabiliriz. Bir form da kullandığımız değişkenin diğer formlarda kullanmak için public ile tanımlarız. Code kısmı : private int fsayi=100; // fsayi Bir formun içinde her event'ta kullanılır. public static int genel=30; // genel bütün formlarda kullanılır private void button1_click(object sender, System.EventArgs e) int bir; fsayi++; bir=100+fsayi; MessageBox.Show(bir.ToString()); MessageBox.Show(genel.ToString()); private void button2_click(object sender, System.EventArgs e) int iki; iki=200+fsayi; MessageBox.Show(iki.ToString()); MessageBox.Show(genel.ToString()); // MessageBox.Show(bir.ToString()); kullanılamaz. bir değişkeni button1'dedir. Dizin Kullanımı private void button8_click(object sender, System.EventArgs e) // tek boyutlu dizin tanımlama int[] yas; yas=new int[10]; // 0 ile 9 arasında 10 dizin oluşur yas[5]=100; yas[2]=120; MessageBox.Show(yas[5].ToString()+" " + yas[2].tostring()); // 5 elemanlı ulke dizin tanımlama. giriş hemen yapılıyor String[] ulke; ulke=new String[5] "turkiye","almanya","ingiltere","cin","rusya"; String[] sehir="denizli",",zmir","ankara"; MessageBox.Show(sehir[2]+" "+ ulke[3]); 14

14 // 2 boyutlu dizin tanımlama String[,] adi; adi=new String[5,7]; adi[1,3]="faruk senturk"; adi[2,4]="ahmet korkmaz"; MessageBox.Show(adi[1,3]+" " + adi[2,4]); diznin boyutu : Rank Diznin elaman sayısı : GetLength Diznin Üst sınırı : GetupperBound int[] yas; yas=new int[10]; // 0 ile 9 arasında 10 dizin oluşur MessageBox.Show("boyutu..:"+yas.Rank.ToString()+"diznin eleman sayısı..:"+yas.getlength(0).tostring()+"üst sınır..:"+yas.getupperbound(0).tostring()); Kullanılan Operatörler Atama = A=100; Eşitlik == if(a==100) veya İf((a==100) (b==50)) ve && İf((a==100)&&(b==50)) Değl! İf(!(a==100)) Eşit değil!= İf(a!=10) Büyüktür > İf(a>10) kücüktür < İf(a<10) Büyük eşittir >= İf(a>=10) Küçük eşittir <= İf(a<=10) X++ X=X+1 ++X X=X+1 X-- X=X-1 --X X=X-1 X+=5 X=X-5 X-=5 X=X-5 X*=5 X=X*5 15

15 Form ve code Penceresinin Çağrılması Bir c# projesi open edilince code ve form ekranı gelmeyebilir veya yanlışlıkla bu pencereleri silebiliriz. Proje open edilir. ( file project Windowsapplication5.sln ) Solution Explorer penceresi çağrılır. View -- solution Explorer Solution Explorer da form1.cs cift tıklanır. Form1 designer gelir. Code penceresi cagrılır. View Code Program çalışmasında değer kontrolü TextBox veya label alana atma MessageBox ile ekranda yazdırma Kod izleme 16

16 17

17 Hesap makinesı Örnegi private void combobox1_selectedindexchanged(object sender, System.EventArgs e) double i; i=0; if (combobox1.text=="toplama") if ((textbox1.text!= "") && (textbox2.text!= "")) i = Double.Parse(textBox1.Text) + Double.Parse(textBox2.Text); if (combobox1.text=="cıkarma") if ((textbox1.text!= "") && (textbox2.text!= "")) i = Double.Parse(textBox1.Text) - Double.Parse(textBox2.Text); if (combobox1.text=="bolme") if ((textbox1.text!= "") && (textbox2.text!= "")) i = Double.Parse(textBox1.Text) / Double.Parse(textBox2.Text); 18

18 if (combobox1.text=="carpma") if ((textbox1.text!= "") && (textbox2.text!= "")) i = Double.Parse(textBox1.Text) * Double.Parse(textBox2.Text); label3.text=i.tostring(); private void Form1_Load(object sender, EventArgs e) combobox1.selectedindex = 0; // ilk girilen( toplama gibi) gözükür * double.parse string degeri integer a cevirir. * i.tostring() i nin integer degerini string degerine cevirir. Yeni form Çağrılması project --> add windows form ile önceden form2 yaratılmalıdır. private void button5_click(object sender, System.EventArgs e) Form2 yeni=new Form2(); yeni.show(); Programdan Çıkış private void button6_click(object sender, System.EventArgs e) Application.Exit(); Form dan Çıkış this.close(); Makinenın Adını öğrenme textbox4.text=system.security.principal.windowsidentity.getcurrent().name; 19

19 Değişkenleri Düzenlemek Procedure ve Fonksiyon Procedure (dönüşsüz): private void mesaj(string mes1,string mes2,int gun2) MessageBox.Show(mes1+" "+mes2+" "+gun2.tostring()); private void button3_click(object sender, System.EventArgs e) String adi="volkan Şentürk"; int yas=10; mesaj(adi,textbox1.text,yas); listbox1.items.add(adi+textbox1.text+yas.tostring()); Fonsiyon (dönüşlü): private static int hesapla(int ucr2,int gun2) int brut=ucr2*ucr2; //String genadi="okutman"+adi2; return brut; private void button1_click(object sender, System.EventArgs e) String adi="faruk Şentürk"; int ucr=convert.toint32(textbox1.text); // string int'e cevriliyor int gun=20; textbox2.text=hesapla(ucr,gun).tostring(); 20

20 Struct ve Class Yapılar, Enum Uygulama Önce groupbox cift tıklama veya sürükleyerek sayfaya getirilir. Radiobutton ise iki kez sürüklenerek groupbox1 içerisine bırakılır. Daha sonra button çift tıklanarak iki button oluşturulur. enum hafta hafta yeni; pazartesi = 0, sali = 1, carsamba = 2, persembe = 3, cuma = 4, cumartesi = 5, pazar = 6 private void gun() if (yeni == hafta.pazartesi) MessageBox.Show("monday"); else if (yeni == hafta.sali) MessageBox.Show(this, "tuesday"); else if (yeni == hafta.carsamba) MessageBox.Show(this, "wednesday"); else if (yeni == hafta.persembe) MessageBox.Show(this, "thursday"); else if (yeni == hafta.cuma) MessageBox.Show(this, "friday"); 21

21 private void button1_click(object sender, EventArgs e) if (radiobutton1.checked == true) yeni = hafta.pazartesi; gun(); else yeni = hafta.carsamba; gun(); private void button2_click(object sender, EventArgs e) yeni++; gun(); MessageBox Fonksiyonu MessageBox.Show("pamukkale üniversitesi"); // pamukkale üniversitesi MessageBox.Show(this,"pamukkale üniversitesi"); // pamukkale üniversitesi MessageBox.Show("pamukkale","mesaj penceresi"); // pencere ismi int aa; String adi="merve tas"; aa=140; MessageBox.Show(aa.ToString()); // 140 yazar MessageBox.Show(adi+" "+aa.tostring()); // merve senturk 140 MessageBox.Show(adi+" "+aa.tostring(),"personel bilgileri"); // ayrıca pencere ismini verir DialogResult devam; devam=messagebox.show("islem devam etsinmi","muhasebe sistemi", MessageBoxButtons.YesNoCancel ); if (devam==dialogresult.no) 22

22 MessageBox.Show("form kapanıyor"); this.close(); else if (devam==dialogresult.cancel) MessageBox.Show("cıkılıyor"); Application.Exit(); else MessageBox.Show("Program calısmaya devam ediyor"); devam=messagebox.show("islem devam etsinmi","muhasebe sistemi",messageboxbuttons.yesnocancel,messageboxicon.error); devam=messagebox.show("islem devam etsinmi","muhasebe sistemi", MessageBoxButtons.YesNoCancel,MessageBoxIcon.Error,MessageBoxDefaultButton.Button2); devam=messagebox.show("islem devam etsinmi","muhasebe sistemi",messageboxbuttons.yesnocancel,messageboxicon.error,messageboxdefaultbutton.button2, MessageBoxOptions.RightAlign); MessageBoxButtons.YesNoCancel MessageBoxButtons YesNoCancel YesNo RetryCancel OKCancel OK AbortRetryIgnore MessageBoxIcon.Asterix MessageBoxIcon Asterix Error Exclamation Hand Information None Question Stop Warning 23

23 InputBox Fonsiyonu C# da Visual basic6.0 daki gibi bir bilgi giriş fonksiyonu yoktur. Fakat bu fonsiyonu Visual Basic den çağırarak rahatlıkla kullanabiliriz. Visual Basic fonksiyonu çağrılır. InputBox fonksiyonu kullanma string sifre; sifre=microsoft.visualbasic.interaction.inputbox("sifreyi giriniz","sifre girisi","pamuk",100,200); 24

24 Şartlar İf switch for while : for döngüsünden farkı kac kez işletilecegi belli degildir. do-while : while den farkı şartın döngü dışında kontrol edilmesidir. foreach break dongu kontrol metodu thread.sleep() metodu application.doevents() metodu İf Yapıları Basit if yapısı : if(a==20) if-else yapıları : if(a==20) else if-else-if-else yapıları : if(a==20) // a=20 şart gecerli oldugunda çalışacak kod else if(a==30) // a=30 şart gecerli oldugunda çalışacak kod else // üsteki iki kod geçersiz olmasında çalışacak kod 25

25 Switch Yapısı int notu; if (textbox1.text!= "") notu = Convert.ToInt16(textBox1.Text); else notu = 0; switch (notu) case 10: label1.text = "sınavdan on aldınız"; break; case 20: label1.text = "sınavdan yirmi aldınız"; break; case 30: label1.text = "sınavdan otuz aldınız"; break; case 40: case 50: case 60: case 70: label1.text = "sınavdan arası aldınız"; break; default: label1.text = "sınava girmediniz"; break; -- case "istanbul": string olarak kullanırız. switch (textbox1.text) case "rize": label1.text = "karadeniz bölgesindedir"; break; case "ankara": label1.text = "iç anadolu bölgesindedir"; break; case "izmir": case "denizli": case "usak": label1.text = "ege bölgesindedir"; break; default: label1.text = "yeniden giriniz"; break; For yapısı int k,say=10; for(k=1;k<10;k++) // for(k=1;k<=10;k+=2) ikişer ikişer artış if(k==5) break; say+=10; 26

26 // Form1.ActiveForm.Text=say.ToString(); formun baslıgında yazma label1.text=say.tostring(); foreach yapısı string[] fakulte=new string[3] "muhendislik","tıp","eğitim"; foreach(string yaz in fakulte) Form1.ActiveForm.Text=Form1.ActiveForm.Text+" ~~~ "+yaz; ---- formun başlıgına, mühendislik~~~ tıp ~~~ eğitim yazar. while Yapısı int k=1,tt=0; while(k<=10) k++; tt=tt+10; label1.text=tt.tostring(); int bb=1,pam=0; do bb++; pam+=10; while(bb<=5); label1.text=pam.tostring(); 27

27 thread.sleep() ve application.doevents() metodu -- Textbox a Girdiğimiz ismi listbox ve label a tek tek yazılması Hatırlatma: Threading kütüphanesi eklenmelidir. using System.Threading; using System.Threading; private void button1_click(object sender, EventArgs e) int k; for(k=0;k<=textbox1.text.length-1;k++) Thread.Sleep(1500); // 1 sn bekle Application.DoEvents(); // for dongusu, listbox1 ve label1'e atama birlikte calışşsın.for baglama yapmasın.yani for'n bitmesini beklemesinler listbox1.items.add(textbox1.text.substring(k,1)); label1.text=label1.text+textbox1.text.substring(k,1); //MessageBox.Show(textBox1.Text.Substring(k,1)); 28

28 Class Yapısı Bir form yaratılır ve üzerinde değişkenler oluşturulur. Project - add class ile class yaratılır ve projeye otomatik dahil olur. Biz üzerinde gereken düzeltmeleri ve değişken eklemeleri yaparız. using System; namespace class_yapı /// <summary> /// Summary description for Class1. /// </summary> public class aile public static string adi_soyadi; public static string adresi; public static int yasi; public static bool medeni_hal; public static string meslegi; public static long maasi; public const int sabit=1000; public static long maashesapla(int katsayi,int kidem) return sabit*katsayi*kidem; 29

29 Butona( hesapla butonu ) tıklayarak kodlama yapılır. private void button1_click(object sender, System.EventArgs e) aile.adi_soyadi=textbox1.text; aile.adresi=textbox2.text; aile.yasi=convert.toint32(textbox3.text); aile.medeni_hal=checkbox1.checked; aile.meslegi=combobox1.text; aile.maasi=aile.maashesapla(convert.toint32(textbox5.text), Convert.ToInt32(textBox6.Text)); textbox4.text=aile.maasi.tostring(); MessageBox.Show(aile.yasi.ToString()); özellikler 1. aile isminde bir class oluşturuldu 2. button1_click içersinde aile. ( noktaya tıklayınca) bir pencere gelir ve istedimiz değşkeni seceriz. Class oluşturulurken Değişenleri public static ( her yerde kullanılsın) tanımladıgımız için gelmektedir. Private tanımlarsak gelmez.o zaman yavru class oluştururuz. Private tanımlı class yapısı Project -- add class ile bir class oluşturulur. Taralı alanı faruk class ı olarak yazarız. using System; namespace class_yapı /// <summary> /// Summary description for Class2. /// </summary> public class faruk private int z=5; public int hesapla(int kidem) return kidem*z; 30

30 public faruk() // // TODO: Add constructor logic here // public static (ana class ) ve private ( yavru class ) Kullanımı Değişkenlerin public static ile tanımlanması : Bir class tanımlamada değişkenleri public static ile tanımlarsak butun tanımların içersinde kullanımda class ismini yazıp noktaya basınca değşkenler pencerede gelir, Secerek kullanmış oluruz. Class: public class faruk public static int z=5; public static int hesapla(int kidem) return kidem*z; Bir buton içersinde class kullanma : private void button2_click(object sender, System.EventArgs e) int sonuc; sonuc=faruk.hesapla(100); Form1.ActiveForm.Text=sonuc.ToString(); MessageBox.Show(sonuc.ToString()); textbox4.text=sonuc.tostring(); sonuc: biz buton içersinde kod yazarken faruk. da hesapla değişkenin bulundugu pencere gelir. Biz hesapla yı seceriz. Class taki değişkenler public static ile tanımlanmıştır. sonuc=faruk.hesapla(100); 31

31 hesap2 butona( button2_click) tıklayınca formun title da textbox3.text te ve messagebox ta 500 yazar. Değişkenlerin private ile tanımlanması : class ların içersindeki bütün değişkenler public static ile tanımlanmazlar. O zaman tüm her kodlamada bu değişkenlere kolayca ulaşabiliriz. Herkesin o değişkenlere ulaşmaması için değişkenleri private ile tanımlarız. Buton tanımlamada yavru class yaratarak( merve) merve üzerinden çalışma yapıyoruz.faruk class ından / içerinde private ( sadece o class ve form da kullan) tanımlanmış. Biz view bir class yaratmış oluyoruz. Merve. Yazınca değişkenlerin tanımlı oldugu pencere gelir. Faruk. da gelmez. Class : public class faruk private int z=5; public int hesapla(int kidem) return kidem*z; Bir buton içersinde class kullanma : private void button2_click(object sender, System.EventArgs e) int sonuc; faruk merve=new faruk(); // merve yavru class oluşturma sonuc=merve.hesapla(100); Form1.ActiveForm.Text=sonuc.ToString(); MessageBox.Show(sonuc.ToString()); textbox4.text=sonuc.tostring(); 32

32 sonuc: aynı şekilde hesap2 butona( button2_click) tıklayınca formun title da textbox3.text te ve messagebox ta 500 yazar. Class ta değiştirme Get ve set komutları vardır. Get de geriye doönecek deger i veririz. Set de değişecek değişkenin adını yazarız. Class: public class degistirme public string memleket; public string etiket get string yer; yer="bu arkadas"+memleket+" sehrinde oturmaktadır"; return yer; set memleket=value; // degişecek demektir public degistirme() // // TODO: Add constructor logic here // Bir buton içersinde kullanım : private void button3_click(object sender, System.EventArgs e) degistirme yeni=new degistirme(); yeni.memleket="denizli"; MessageBox.Show(yeni.etiket); 33

33 Class ta sadece okuma Class: public class sadeceokuma public readonly string isim="faruk senturk"; public string oku get return isim; Bir buton içersinde kullanım : sadeceokuma yeni=new sadeceokuma(); //yeni.isim="merve"; // bu atama hata verir. MessageBox.Show(yeni.isim); Class: Class ta yazma public class yaz public string isim="volkan senturk"; public string pamuk set isim=value; Bir buton içersinde kullanım : private void button5_click(object sender, System.EventArgs e) yaz yeni=new yaz(); yeni.isim="merve"; MessageBox.Show(yeni.isim); 34

34 Hata Yakalama ( try catch ) Hata durumunda Bir mesaj ve hata kodu ( try catch ) Hata durumunda farklı mesajlar ( try catch catch catch ) dogru veya hatalı çalışmasında mutlaka çalışsın (try-catch-finally) Hata durumunda Bir mesaj ve hata kodu private void button1_click(object sender, System.EventArgs e) int say1,say2; double tt; try say1=convert.toint32(textbox1.text); say2=convert.toint32(textbox2.text); tt=say1/say2; label1.text=tt.tostring(); catch( System.Exception hatano ) MessageBox.Show("degerleri dogru giriniz"); MessageBox.Show("Hata mesajı...:"+hatano); 35

35 Hata durumunda farklı mesajlar private void button2_click(object sender, System.EventArgs e) int say1,say2; double tt; try say1=convert.toint32(textbox1.text); say2=convert.toint32(textbox2.text); tt=say1/say2; label1.text=tt.tostring(); catch(formatexception hatano) MessageBox.Show("degerlere sayı giriniz"); catch(dividebyzeroexception hatano) MessageBox.Show("0 'a bolme hatası"); catch( System.Exception hatano ) MessageBox.Show("degerleri dogru giriniz"); MessageBox.Show("Hata mesajı...:"+hatano); dogru veya hatalı çalışmasında mutlaka çalışsın (finally) private int tam; private void button3_click(object sender, System.EventArgs e) int say1,say2; double tt; try say1=convert.toint32(textbox1.text); say2=convert.toint32(textbox2.text); tt=say1/say2; label1.text=tt.tostring(); catch(formatexception hatano) MessageBox.Show("degerlere sayı giriniz"); catch(dividebyzeroexception hatano) MessageBox.Show("0 'a bolme hatası"); 36

36 catch( System.Exception hatano ) MessageBox.Show("degerleri dogru giriniz"); MessageBox.Show("Hata mesajı...:"+hatano); finally tam++; MessageBox.Show(tam.ToString()); Fonksiyonlar Pozatife cevirme (Abs) Kusuratı yuvarlama ile cıkarma (Ceiling, Flor) Ondalık Kısmındaki sayıyı yuvarlama ( Math.Round ) En küçük, En büyuk sayıyı bulma ( Max,Min) Üslü kuvveti alma ( Math.Pow karesi,üçlü kuvveti ) Karekök alma (Math.Sqrt) Rasgele sayı ( Random ) Değer karşılaştırma ( Compare, Equals ) Dizin elemanları arasına karekter yerleştirme (join ) Uzunluk ( Lenght), Pozisyon bulma (IndexOf ) Karekter girişi ( Insert) Karekter Silme ( Remove ) Karekter Değiştirme ( Replace) Karekter çıkarma ( Substring) Büyük Harfe çevirme ( ToUpper ) küçük Harfe çevirme ( ToUpper ) Boşluğu cıkarma ( Trim) Tarih Fonsiyonları Directory Yaratma ( Create Directory ) Program Listeleme ( directory.getfiles ) Sürücü Listeleme (Directory.GetLogicalDrives ) Dosya Kopyalama Dosya Taşıma Dosya Silme Dosyanın directory,uzunluk ve ismi Yeni Bir Dosya oluşturma Bir TextBox alanı text dosyaya kayıt etme Bir Text Dosyayı Listitem a taşıma Textbox veya label a Text dosyadan okuma 37

37 Pozatife cevirme(abs) Eksili sayıları artıya çevirir. private void button1_click(object sender, System.EventArgs e) double x; x=math.abs(convert.todouble(textbox1.text)); label4.text=x.tostring(); Kusuratı yuvarlama ile atma(ceiling,floor) private void button2_click(object sender, System.EventArgs e) double x; x=math.ceiling(convert.todouble(textbox1.text)); label4.text=x.tostring(); Ceiling: Kusuratlı sayıları kusuratı atarak mutlaka bir büyüge cevirme negatifli sayıları sadece kusuratını atar > 25 32,60 ---> 33 32,01 ---> 33-32,01 ---> 32-32,60 ---> -32 Floor: Match.Floor ise tam tersini yapar. x=math.floor(convert.todouble(textbox1.text)); > 25 32,60 ---> 32 32,01 ---> 32-32,01 ---> 33-32,60 ---> -33 Ondalık Kısmındaki sayıyı yuvarlama ( Math.Round ) Ondalık kısmındaki rakam sayısı.yuvarlama yapar tamsayı ise aynen alır > , > > private void button5_click(object sender, System.EventArgs e) double x; x=math.round(convert.todouble(textbox1.text),2); label4.text=x.tostring(); En küçük, En büyük sayıyı bulma ( max,min) private void button3_click(object sender, System.EventArgs e) // İki sayıdan büyügünü alma double x; x=math.max(300,200); // 300 alır label4.text=x.tostring(); // İki sayıdan küçüğünü alma 38

38 x=math.min(300,200); // 200 alır label5.text=x.tostring(); Üslü kuvveti alma ( Math.Pow karesi,uclu kuvveti ) private void button4_click(object sender, System.EventArgs e) // Convert.Todouble sayısala cevirmeyi yapar double x; x=math.pow(convert.todouble(textbox1.text),2); // karesini alır label4.text=x.tostring(); Karakök alma x=math.pow(convert.todouble(textbox1.text),3); // uclu kuvvetini alır label5.text=x.tostring(); private void button6_click(object sender, System.EventArgs e) double x; x=math.sqrt(100); // 10 yazar label4.text=x.tostring(); Rasgele sayı ( Random ) private void button7_click(object sender, System.EventArgs e) // Normal rasgele farklı sayı int say; Random rasgel=new Random(); say=rasgel.next()%20; // 0-20 arası sayı uretilir label4.text=say.tostring(); // 3 say=rasgel.next()%20; label5.text=say.tostring(); // 14 // Saatin salisinden faydalanarak her seferinde farklı sayı // butona tıklayınca mutlaka farklı sayı int say; DateTime zaman=datetime.now; Random rasgel=new Random( (int)zaman.millisecond ); say=rasgel.next()%20; label4.text=say.tostring(); say=rasgel.next()%20; label5.text=say.tostring(); // b dizinin 10 elamanına rasgele sayı uretme Byte[] b=new byte[10]; Random rnd=new Random(); rnd.nextbytes(b); // 10 elemanlı b dizin rasgele sayı olur 39

39 label4.text=b[1].tostring(); label5.text=b[5].tostring(); Değer karşılaştırma ( Compare,Equals, Concat, Empty ) iki degeri kontrol etme 1. yöntem: compare(.,. ) ----> 0 cıkarsa aynı 2. yöntem: Equals(.,. ) ----> true, false private void button9_click(object sender, System.EventArgs e) double x; x=string.compare("ataturk","at"); label4.text=x.tostring(); // 1: var, -1:yok, 0:iki deger aynı x=string.compare("ataturk","mer"); label5.text=x.tostring(); string bir,iki; bir="turkiye"; iki="ankara"; if(string.equals(bir,iki)==false) MessageBox.Show("degerler farklı"); // string deger birleştirme (Concat) string a1,a2; a1="merve"; a2="volkan"; textbox3.text=string.concat(a1,"mehmet",a2,"bahriye"); // string degerin içerisini boşaltma(empty) textbox1.text=""; textbox2.text=string.empty; Dizin elemanları arasına karekter yerleştirme (join ) private void button10_click(object sender, System.EventArgs e) string[] isim=new string[3] "faruk","merve","volkan"; MessageBox.Show(string.Join(" * ",isim,0,3)); // faruk * volkan * merve Uzunluk ( Lenght), Pozisyon bulma (IndexOf ) private void button11_click(object sender, System.EventArgs e) // pozisyonu bulma string isim="denizli"; // 7 karekter var. 0-6 pozisyon 40

40 int t; // MessageBox.Show(isim.Length.ToString()); // 7 // t=isim.indexof("d",0,isim.length); // 1. karekterden 7. karektere kadar bak // label4.text=t.tostring(); // 0.pozisyon // t=isim.indexof("i",0,isim.length); // label4.text=t.tostring(); // 3. pozisyon t=isim.indexof("i",5,2); //5. karekterden basla. 5+2= 7 karektere kadar bak label4.text=t.tostring(); // 6. pozisyon Karekter girişi ( Insert) private void button11_click_1(object sender, System.EventArgs e) string deger1="ege üniversitesi"; label4.text=deger1.insert(5,"-bilgi-"); //ege ü-bilgi-niversitesi Karekter Silme ( Remove ) private void button16_click(object sender, System.EventArgs e) string deger1="denizli"; label4.text=deger1.remove(3,2); //denli Karekter Değiştirme ( Replace) private void button13_click(object sender, System.EventArgs e) string deger1="denizli"; label4.text=deger1.replace("den","pam"); //pamizli Karekter çıkarma ( Substring) private void button14_click(object sender, System.EventArgs e) string deger1="denizli"; label4.text=deger1.substring(3,2); // istenilen karekter cıkarılır. iz Büyük Harfe çevirme ( ToUpper ) private void button15_click(object sender, System.EventArgs e) string deger1="denizli"; label4.text=deger1.toupper(); //DENİZLİ 41

41 küçük Harfe çevirme ( ToUpper ) private void button17_click(object sender, System.EventArgs e) string deger1="pamukkale"; label4.text=deger1.tolower(); //pamukkale Boşluğu cıkarma ( Trim) private void button18_click(object sender, System.EventArgs e) string deger1=" abc ";// 2 bosluk abc 2 bosluk = 7 karekter label4.text=deger1.length.tostring(); // 7 // label5.text=deger1.trimstart().length.tostring(); // 5 Bastaki 2 boşlugu atar // label5.text=deger1.trimend().length.tostring(); // 5 Sondaki 2 boşlugu atar label5.text=deger1.trim().length.tostring(); // 3 Bastakive sondaki 2 boşlugu atar Tarih Fonsiyonları private void button12_click(object sender, System.EventArgs e) //label4.text=datetime.maxvalue.tostring();//max tarih :59:59 //label5.text=datetime.minvalue.tostring();// min tarih :00:00 //label6.text=datetime.now.tostring(); // aktif tarih ve saat //label7.text=datetime.today.tostring(); // aktif tarih //label4.text=datetime.today.day.tostring(); //gun'u verir //label5.text=convert.todatetime("05/02/2002").day.tostring(); //gun'u verir 5 //label5.text=convert.todatetime(" ").day.tostring(); // tarih - ile kullanıldı //label5.text=convert.todatetime(textbox1.text).day.tostring(); // textbox'tan deger alma //label4.text=datetime.today.month.tostring(); //ayı verir 10 //label5.text=datetime.today.year.tostring(); //yılı verir // label4.text=datetime.today.dayofyear.tostring(); //2bu gune kadar 275 gun vardır // label5.text=datetime.today.dayofweek.tostring(); // sunday // label6.text=datetime.today.addyears(2).tostring(); //2 yıl sonraki tarih.yıl ekleme // label7.text=datetime.today.addmonths(1).tostring(); //1 ay sonraki tarih.ay ekleme // label7.text=datetime.today.adddays(6).tostring(); //6 gun sonraki tarih.gun ekleme Directory Yaratma ( Create Directory ) private void button19_click(object sender, System.EventArgs e) // using System.IO; olarak ekleme yaparız // directory yaratma /* Directory.CreateDirectory("D:\\muh"); Directory.CreateDirectory("D:\\muh\\sabit"); Directory.CreateDirectory("D:\\muh\\bil"); // directory silme Directory.Delete("d:\\muh\\bil"); 42

42 if(directory.exists("d:\\muh\\sabit")==false) Directory.CreateDirectory("D:\\muh\\sabit"); if(directory.exists("d:\\muh\\bil")) Directory.Delete("D:\\muh\\bil"); */ // directory listeleme string[] far=directory.getdirectories("d:\\"); foreach(string tek in far ) listbox1.items.add(tek); Program Listeleme ( directory.getfiles ) private void button20_click(object sender, System.EventArgs e) // program listeleme string[] far=directory.getfiles("d:\\net"); foreach(string tek in far ) listbox1.items.add(tek); Sürücü Listeleme (Directory.GetLogicalDrives ) private void button21_click(object sender, System.EventArgs e) // sürücü listeleme string[] far=directory.getlogicaldrives(); foreach(string tek in far ) listbox1.items.add(tek); Dosya Kopyalama private void button22_click(object sender, System.EventArgs e) // using System.IO ; ekleme yapmalıyız // dosya kopyalama FileInfo dosya=new FileInfo("d:\\muh\\dene.txt"); // dosyayı isaretleriz dosya.copyto("d:\\muh\\gul.txt",true); // kopyalama Dosya Taşıma private void button23_click(object sender, System.EventArgs e) // dosya tasıma FileInfo dosya=new FileInfo("d:\\muh\\dene.txt"); // dosyayı isaretleriz dosya.moveto("d:\\muh\\can.txt"); // tasıma 43

43 Dosya Silme private void button24_click(object sender, System.EventArgs e) FileInfo dosya=new FileInfo("d:\\muh\\can.txt"); // dosyayı isaretleriz if(dosya.exists) dosya.delete(); MessageBox.Show("dosya silindi"); else MessageBox.Show("dosya bulunmadı"); Dosyanın directory,uzunluk ve ismi private void button25_click(object sender, System.EventArgs e) FileInfo dosya=new FileInfo("d:\\muh\\gul.txt"); label4.text=dosya.directory.tostring(); //dosyanın bulundugu directory label5.text=dosya.length.tostring(); // dosyanın uzunlugu label6.text=dosya.name; // dosyanın ismi Yeni Bir Dosya oluşturma private void button26_click(object sender, System.EventArgs e) StreamReader oku=new StreamReader("d:\\muh\\gul.txt"); StreamWriter yaz=new StreamWriter("d:\\muh\\bilanco.txt"); //StreamWriter yaz=new StreamWriter("\\\\server1\\kredi\\bilanco.txt"); network erişim string satir; while (( satir=oku.readline())!=null) yaz.writeline(satir); oku.close(); yaz.close(); Bir TextBox alanı text dosyaya kayıt etme private void button27_click(object sender, System.EventArgs e) // dosya olustur // textbox'ta birden fazla satır girmek için properties'de multiline=true yaparız StreamWriter yaz=new StreamWriter("d:\\muh\\person.txt"); yaz.writeline(textbox1.text); yaz.close(); 44

44 Bir Text Dosyayı Listitem a taşıma private void button28_click(object sender, System.EventArgs e) StreamReader oku=new StreamReader("d:\\muh\\gul.txt"); string satir; while (( satir=oku.readline())!=null) listbox1.items.add(satir); oku.close(); Textbox veya label a Text dosyadan okuma private void button29_click(object sender, System.EventArgs e) // farklı yöntemle tekbox veya label'a dosya okuma StreamReader oku=file.opentext("d:\\muh\\gul.txt"); textbox1.text=oku.readtoend(); oku.close(); 45

45 Events lar Mouse sol,sağ, orta buton tıkalyınca mesaj yazması. Mouse down veya Mouse up da aynı sonucu alırız. if(e.button==mousebuttons.left) MessageBox.Show("sol tusa bastınız.."); else if(e.button==mousebuttons.right) MessageBox.Show("sag tusa bastınız "); else if(e.button==mousebuttons.middle) MessageBox.Show("sag tusa bastınız "); label1.text=" x koordinatı:"+e.x+" y koordinatı..:"+e.y; Event Oyun ( Butona tıklayamama ) Mouse tıklamak için hareket edince butonda hareket eder. private void Form1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e) 46

46 button1.left=e.x+30; button1.top=e.x+30; Event Açıklama click Mouse Sol botuna tıklama TextChanged Textbox içeriğinin değişmesi MouseDown Mouse da herhagi butona tıklama MouseUp MouseDown ile aynıdır MouseMove MouseDown ve MousUp gibidir. Yalnız tıklama ile degil, hareket iledir. MouseEnter Mouse üzerine gelince bir kez işler MouseHover Mouse hareketsiz kalırsa otomatik işler. Closing Form kapatılırken. e.cancel=true ile kapanması engellenir. Closed Farm Kapatılırken. E.Cancel kullanılamaz.değişiklik kaydedilsinmi uyarı kullanılır. Load Form çalıştırıldığında devreye girer. Enter Textbox değişkene gelince ( tab ile ) çalışır Leave Textbox değişkeni geçince çalışır. Validating Textbox değişkene gelince calışır AutoSizeChanged Size değişince EnabledChanged Kontrolün Enabled özelliği değişince fontchanged Font değişince ForeColorChanged Yazı iç rengi değişmesince BackColorChanged Yazı diş rengin değişmesiyle MultiLineChanged Textbox da multiline true veya false olunca ReadOnlyChanged Read özelliği değişince KeyDown Klavyeden herhangi bir tuşa basılmasıyla Klavyedeki Tuşların kontrolu private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) if(e.keycode==keys.a) MessageBox.Show("A tuşuna basıldı"); else if(e.keycode==keys.b) MessageBox.Show("B tuşuna basılıd"); 47

47 else if(e.keycode==keys.b) MessageBox.Show("B tuşuna basıldı"); else if(e.keycode==keys.left) MessageBox.Show("Sol ok tuşuna basıldı"); else if(e.keycode==keys.f3) MessageBox.Show("F3 tuşuna basıldı"); else if(e.keycode==keys.escape) MessageBox.Show("escape tuşuna basıldı"); else if(e.keycode==keys.pageup) MessageBox.Show("Page up tuşuna basıldı"); else MessageBox.Show("Herhangi bir tuşa bastınız"); label1.text=e.keyvalue.tostring(); // ascii kodu yazar Alt,Control, Shift ile birlikte basılan kontrol private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) if(e.alt==true) if(e.keycode==keys.return) MessageBox.Show("alt-enter'a basıldı.."); if(e.control==true) if(e.keycode==keys.return) MessageBox.Show("Control-enter'a basıldı.."); if(e.shift==true) if(e.keycode==keys.d) MessageBox.Show("shift-D'e basıldı.."); 48

48 Formu kapatma Kapatmada soru sordurma. Kapatmayı durdurabiliriz( e.cancel=true ; ) private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e) DialogResult mesaj; mesaj=messagebox.show("kapatmak istiyormusunuz", "kapat",messageboxbuttons.yesno); if ( mesaj==dialogresult.no) e.cancel=true; // Kapatmayı durdurma else MessageBox.Show("program kapatılıyor.."); Kesin Kapatma. Yalnız son bir işlem ( kayıt gibi ) yapma private void Form1_Closed(object sender, System.EventArgs e) DialogResult mesaj; mesaj=messagebox.show("degişiklikler kaydedilsinmi","kapat",messageboxbuttons.yesno); if ( mesaj==dialogresult.yes) // kayıt kodları yazılır MessageBox.Show(" değişiklikler kaydedildi..."); Form Yüklemede şifre kullanma private void Form1_Load(object sender, System.EventArgs e) // project-add referance ile Mic. visual basic runtime eklenir. int sayi=1; string sifre; sifre= Microsoft.VisualBasic.Interaction.InputBox("sifreyi giriniz", "sifre girisi","",100,200); while(sifre!="faruk") if(sayi>3) break; else sifre= Microsoft.VisualBasic.Interaction.InputBox("sifreyi giriniz","sifre girisi","sifre tekrar",100,200); sayi++; if(sayi>=3) MessageBox.Show("3 hakkınızıda bilemediniz.yeniden deneyiniz"); Application.Exit(); 49

49 Bazı tuşların textbox a girişini Engelleme private void textbox1_keypress(object sender, System.Windows.Forms.KeyPressEventArgs e) // sayılar. A=65,B=66,C=67,D=68. Backspace=10 // A,B,C,D harflerinin textbox'a girilmesini engellemek için; if ((e.keychar >= (char)65) && (e.keychar <= (char)68)) if ((e.keychar > (char)10) && (e.keychar < (char)48) (e.keychar > (char)57)) e.handled = true; label1.text = e.keychar.tostring(); // bütün tusları label'a yazdırma Form Başlığı button gibi yerde değişiklik: Form1.ActiveForm.Text= personel sistemi ; veya This.Text= personel sistemi Load event ta ( yükleme sırasında ) : This.Text= personel sistemi ; 50

50 Esc ve Enter Tuşlarını button lara tanımlama Biz form load avent ta veya form active event ta Enter veya esc basınca buton tıklanmış gibi çalışacak hale getiririz. Active de tanım yaparsak Form1.ActiveForm, load da tanım yaparsak this kullanırız. Form Load ta tanımlama private void Form1_Load(object sender, System.EventArgs e) this.text="muhasebe sistemi"; this.acceptbutton=button1; // enter tuşuna basınca button1 calışır this.cancelbutton=button2; // esc tuşuna basınca button2 çalışır Form Active de tanım private void Form1_Activated(object sender, System.EventArgs e) Form1.ActiveForm.AcceptButton=button1; Form1.ActiveForm.CancelButton=button2; private void button1_click(object sender, System.EventArgs e) MessageBox.Show("enter basıldı.."); private void button2_click(object sender, System.EventArgs e) MessageBox.Show("ESC basıldı.."); 51

51 Form özelliklerini değiştirme Forms a ait özellikleri properties penceresinden manual veya action dan form1_load a kodlama ile yapılır. 52

52 Buton ekleme Forms üzerinden veya kodlama ile yaparız. Button yeni = new Button(); this.controls.add(yeni); yeni.left = 50; yeni.top = 100; yeni.text = "arama"; 53

53 Menu Oluşturma 1.Yöntem : Buton ile Form Çagırma C# girince form1 gelir. 3 adet ek form oluşturulur. ( Project --- add windows form ) 54

54 Form1 ana formundan form2,form3,form4 ü buton ile çağırıyoruz. Form Çağırma Form2 pen=new Form2(); pen.show(); Form2 gelir.form2 ve form1 de çalışabiliriz. Form2 pen=new Form2(); pen.showdialog(); Form2 gelir.sadece form2 de çalışabiliriz.aktif olan form2 ye izin verir. Uygulamadan Çıkış Application.Exit(); Form u kapatma this.close(); aktif formu kapat. Form2.ActiveForm.Close(); form2'yi kapat Formu gizleme this.hide(); Aktif form'u gizler. Form4.ActiveForm.Hide(); Form4 ü gizler. Anamenu Formu private void button1_click(object sender, System.EventArgs e) Form2 pen=new Form2(); pen.show(); private void button2_click(object sender, System.EventArgs e) Form3 pen=new Form3(); pen.showdialog(); private void button4_click(object sender, System.EventArgs e) Form4 rapor=new Form4(); rapor.show(); private void button3_click(object sender, System.EventArgs e) Application.Exit(); Personel Formu private void button1_click(object sender, System.EventArgs e) this.close(); // aktif formu kapat.altaki ile aynıdır // Form2.ActiveForm.Close(); // form2'yi kapat 55

55 Maas Formu private void button1_click(object sender, System.EventArgs e) this.close(); Forms4 formu private void button1_click(object sender, System.EventArgs e) //this.hide(); // form4'ü gizler. Daha cok ths.close() kullanırız. Form4.ActiveForm.Hide(); // " " " 2.Yöntem : MenuStrip ile toolbox dan Mainmenu cift tıklanır Form1 in altına gelen mainmenu ye bir kez tıklarız. Formun üstünde Type Here cıkar. Type Here üzerine tanımlar yazarız. Altına sigorta gibi şeklinde menu isimlerini gireriz. Sigortaya, personel e, Cıkış2a cift tıklayıp kodlamayı yaparız. Kodlama Midi-child form için form özelliklerinde IsMdiContainer=true yaparız. Form cagırırken mmdiparent=this özelliğini kullanırız. private void cıkıstoolstripmenuitem_click(object sender, EventArgs e) Application.Exit(); private void ssktoolstripmenuitem_click(object sender, EventArgs e) Form2 ssk=new Form2(); ssk.mdiparent=this; // child form ( yavru) için ssk.show(); 56

56 private void faturatoolstripmenuitem_click(object sender, EventArgs e) MessageBox.Show(" Sayfa yapım asamasındadır..."); 57

57 3.Yöntem : ToolStrip ile Resim butonlu menu hazırlamadır. toolstrip sürüklenerek veya çift tıklanarak form1 in üstünde cubuk şeklinde yer alır. Form1 sayfasının daha iyi menülü görüntüsünü saglamak için ; lsmdicontainer i true yaparız. Butonların Özelliklerinde(properties) 58

58 o o o Text : toolbar daki butonun görünen adı. personel,stok,cıkıs Tooltip : runtime da Mouse butonun üzerine gidince help bilgisi Image : Buton resmi Resimli butonlara tıklayarak kodlama yaparız. private void toolstripbutton1_click(object sender, EventArgs e) Form2 yeni = new Form2(); // yeni.mdiparent = this; // Form2, form1 içersinde baglı gelir. yeni.show(); private void toolstripbutton2_click(object sender, EventArgs e) MessageBox.Show("sayfa yapım asamasındadır.."); private void toolstripbutton4_click(object sender, EventArgs e) Application.Exit(); 59

59 Web Sayfasına Bağlantı Toolbox dan linklabel tıklanır. Text ten ismi değiştirilir. ( milliyet gazatesi ) Linklabel ın font u, Linkcolor ı properties lerden değiştirilir. Form load event ta milliyet gazatesi yazısının kac karekteri tıklamayı kabuletsin yapılır. Yani Mouse ile üzerine gelince tıklamaya müsait olsun yapılır. Private void Form1_Load(object sender, System.EventArgs e) linklabel1.links.add(0,8, ); Web adresine gitme linlabel etiketine cift tıklayarak yazılır. private void linklabel1_linkclicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e) System.Diagnostics.Process.Start(e.Link.LinkData.ToString()); Runtime da Milliyet gazatesine cift tıklayınca a gider. Yani Internet Explorer çalışır. 60

60 Cursor Textbox da iken F1 basınca Yardım ( helpprovider ) private void Form1_Load(object sender, System.EventArgs e) helpprovider1.sethelpstring(textbox1,"kodu girilecek"); helpprovider1.sethelpstring(textbox2,"tekstil birim fiyatı girilecek"); helpprovider1.sethelpstring(textbox3,"adet girilecek"); Form1_load : Form yüklenirken calışır. 61

61 Hata kontrol Mesajı ( errorprovider ) Değişkenlere istenilen deger girilmedi zaman kırmızı yuvarlak olarak işaretle gösterir. Yuvarlak daire üzerine Mouse ile gelince mesaj verir. private void button1_click(object sender, System.EventArgs e) if(textbox1.text=="") errorprovider1.seterror(textbox1,"kodu giriniz"); else errorprovider1.seterror(textbox1,""); if(textbox2.text=="") errorprovider1.seterror(textbox2,"fiyatı giriniz"); else errorprovider1.seterror(textbox2,""); if(textbox3.text=="") errorprovider1.seterror(textbox3,"adeti giriniz"); else errorprovider1.seterror(textbox3,""); 62

62 Büyük, Küçük ve şifreli Giriş Örnek TextBox kodlamaları : textrbox1.width=textbox1.width+50; textbox1.font= new Font ( Arial,20); textbox2.focus(); // textbox2 git TextBox textbox1=new TextBox(); textbox1.location=new Point(0,0); textbox1.size=new Size(152,20); 63

63 Button Özellikleri TextBox veya Buton üzerine Mouse ile gelince acıklama yazması ALT ile bir karekter (A,B gibi ) tıklayıca buton çalışır Butonun görüntü değişikliği private void Form1_Load(object sender, System.EventArgs e) ToolTip goster=new ToolTip(); goster.settooltip(this.button1,"personel hesaplama yapar");// button üzerine gelince yazar goster.settooltip(this.textbox1,"urunun fiyatı"); // textbox'ın üzerine gelince yazar button1.text="&rapor"; // alt tusuyla R 'de çalışır 64

64 Checkbox, Radiobutton, Listbox,combobox Kontrolu checkbox private void button1_click(object sender, System.EventArgs e) checkbox2.checked=true; checkbox2.flatstyle=flatstyle.flat; checkbox3.flatstyle=flatstyle.popup; if (checkbox1.checked==true) MessageBox.Show("Đngilizce biliniyor.."); else MessageBox.Show("Đngilizce bilinmiyor.."); RadioButton 1. Groupbox cift tıklanır 2. groupbox seçiliyken radiobutton cift tıklanır private void button2_click(object sender, System.EventArgs e) radiobutton1.checked=true; if (radiobutton5.checked==false) MessageBox.Show("fransızca bilmiyor.."); 65

65 ListBox private void button3_click(object sender, System.EventArgs e) listbox1.items.add("mehmet"); // ekleme // if (textbox1.text!="") listbox1.items.add(textbox1.text); textbox1.text=listbox1.text; // Secili olanı texbox'a at listbox1.items.remove("merve");// Silme listbox1.setselected(0,true); // ilk kayıtı sec MessageBox.Show(listBox1.Items.Count.ToString()); // toplam Combobox private void button4_click(object sender, System.EventArgs e) MessageBox.Show(comboBox1.Text);// secili elemanı yazar MessageBox.Show(comboBox1.SelectedIndex.ToString()); // secili elamanın index nosunu verir 0'dan başlar 66

66 Tabmenu hazırlama Toolbox dan tabcontrol cift tıklanarak form1 e tabmenu getirilir. Tabemenu üzerinde sağ Mouse- add tab ile tab sayfa lar eklenir.( tabpage2 gibi) Tabpage lerin ismi değiştiririz. Tabmenudeki tabpage2 tıklarız - altındaki diktörtgene tıklarız -- properties den Text in degerini ( tabpage2) değiştiririz. Tabmenu nin içindeki önce tabpage1( musteri) sonra diktörtgen alan tıklanır.ve içerine textbox veya label getiririz.(toolbox tan cift tıklayarak ). Aynı işkelemi tabpage2(ssk) içinde yaparız. 67

67 private void button1_click(object sender, System.EventArgs e) tabcontrol1.selectedtab=tabpage2; // ssk a gecer Agaç görünümlü Kontrol ( treeview ) 68

68 private void button2_click(object sender, System.EventArgs e) label3.text=treeview1.selectednode.text; // secili olan satırı gosterir //label3.text=treeview1.selectednode.index.tostring(); //secili elemanın kacıncı pozisyon oldugu yazar //label3.text=treeview1.nodes.count.tostring();//ana kayıtların toplam sayısı // ********** EKLEME *************************** //treeview1.nodes.add("ankara");//en sona ana ekleme yapar //treeview1.selectednode.nodes.add("bogazkoy");//secili olana ekler //treeview1.nodes[0].nodes.add("bornova"); //ilk kayıta baglı alt ekleme //treeview1.nodes[0].nodes[0].nodes.add("belkahve"); //ilk kayıta baglı alt kayıtın altına ekler //treeview1.nodes[3].nodes.add("bakırkoy"); //4. kayıta baglı alt ekleme // *********** SILME ************************** //treeview1.nodes.remove(treeview1.selectednode);//secimli olanı siler //treeview1.nodes.remove(treeview1.nodes[1]);// 1.pozisyonu siler //treeview1.nodes.clear();// hepsini siler //treeview1.checkboxes=true;//secimli kare eklenir //treeview1.expandall(); //alt kayıtları acar //treeview1.collapseall();// alt kayıtları toplar //treeview1.showlines=true;//kenarındaki cizgileri gosterir veya kaldırır //label3.text=treeview1.selectednode.checked.tostring();// sectigim kayıtte checkbox işaretlimi.true,false imagelist ve listview imagelist ve listview toolbox tan eklenir. İmagelist e resimler eklenir( imagelist1- properties(images) -- add) 69

69 private void button3_click(object sender, System.EventArgs e) listview1.items.add("person"); listview1.items.add("muh-d",0);//imagelist'deki 0 pozisyondaki resmide ekle //listview1.clear();// hepsini siler //listview1.items.removeat(1);//1. pozisyonu, yani 2.kayıtı siler //label5.text=listview1.items.count.tostring(); // kayıt sayısını verir Tarih Secme(DateTimePicker ) -- Cıkan tarih menusunden tarih seceriz. 70

70 private void button1_click(object sender, System.EventArgs e) label1.text=datetimepicker1.text;// secilen tarihi alır Scrollbar kontrolu dikey ve yatay scroll saga,sola veya ust,alta gidince resmin boyutu değişir. private void vscrollbar1_scroll(object sender, System.Windows.Forms.ScrollEventArgs e) picturebox1.height=vscrollbar1.value+1; private void hscrollbar1_scroll(object sender, System.Windows.Forms.ScrollEventArgs e) picturebox1.width=hscrollbar1.value+1; 71

71 Timer ( Zaman Kontrolu ) public static string mesaj="pamukkale Üniversitesi Egitim Fakultesi Bote 2.Sınıf"; public static int x=1; private void Form1_Load(object sender, System.EventArgs e) timer1.interval=500; //1 sn bekle timer1.enabled=true; // timer baslar //timer1.start(); // timer baslar // timer1.stop(); // timer durur //timer1.enabled=false; // timer durur private void timer1_tick(object sender, System.EventArgs e) label1.text=mesaj.substring(x,mesaj.length-x); if(x==mesaj.length-1)x=0; x++; 72

72 statusstrip ( Formun altında mesaj verir, Kullanıcıyı bilgilendirme ) Formun alt tarafında durum cubugu oluşturarak kullanıcıyı bilgilemdirme yapabiliriz. toolstripstatuslabel1.text = "kodu ve adı giriniz"; gibi. private void button1_click(object sender, EventArgs e) toolstripstatuslabel1.text = "kodu ve adı giriniz"; 73

73 Dosya okuma ve yazma( openfiledialog,savefiledialog ) using System.IO; //ekleme yapılmalıdır. Sadece dosya isimlerini getirme : private void button3_click(object sender, EventArgs e) //openfiledialog1.showdialog();// acma penceresi.tek kullanılabilir. openfiledialog1.title = "personel resim dosyası";//gelecek pencerenin baslıgı openfiledialog1.defaultext = "exe";//varsayılan extention exe kullan openfiledialog1.filter = "jpg files *.jpg butun file *.*"; // iki filter openfiledialog1.filterindex = 1; // 1.filterı kullan(*.jpg" openfiledialog1.initialdirectory = "d:\\temp"; openfiledialog1.multiselect = true;// shiftle birden fazla dosya ac openfiledialog1.showdialog();// acma penceresi gelir //label1.text=openfiledialog1.filename; // bir dosya için foreach (string muh in openfiledialog1.filenames) // birden fazla dosya için //label1.text = label1.text + " - " + muh; // label1'e getirme textbox1.text = textbox1.text + " - " + muh; // textbox1'e getirme dosya okuma : text bir dosyadan okuma private void button1_click(object sender, EventArgs e) string satir; openfiledialog1.title = "dosya okuma"; openfiledialog1.showdialog(); StreamReader oku = new StreamReader(openFileDialog1.FileName); while ((satir = oku.readline())!= null) textbox1.text += satir + (char)13 + (char)10; oku.close(); 74

74 dosya yazma: Hazır bir text dosyasına kayıt eder private void button2_click(object sender, EventArgs e) string satir; openfiledialog1.title = "dosya yazma"; openfiledialog1.showdialog(); StreamWriter yaz = new StreamWriter(openFileDialog1.FileName); yaz.writeline(textbox1.text); yaz.close(); TrackBar Bir resmin büyütülüp, küçültülmesi private void trackbar1_scroll(object sender, System.EventArgs e) picturebox1.width=trackbar1.value*10; picturebox1.height=trackbar1.value*10; private void trackbar1_scroll(object sender, EventArgs e) //MessageBox.Show(trackBar1.Value.ToString());// trackbar 0-10 arasındaki degeri picturebox1.width = trackbar1.value * 20; picturebox1.height = trackbar1.value * 20; 75

75 progressbar Toolbox dan progressbar ı cift tıklayarak getiririz. Prograssbar ın properties degeri arasın value dir. Biz istersek properties den bu degerleri degiştirebiliriz. Progressbar da deger artışını göstermek için timer dan yararlandık.baslat buton da timer ı baslattık. Dur butonda durdurduk.aynı zamanda label1 dede progressbar ın value degerini yazdırdık. private void timer1_tick(object sender, EventArgs e) if (progressbar1.value <= 95) progressbar1.value = progressbar1.value + 5; else progressbar1.value = 0; label1.text = "% " + progressbar1.value.tostring() + " tamamlandı.."; private void button1_click(object sender, EventArgs e) timer1.interval = 400; // 1000: 1 saniye timer1.enabled = true; private void button2_click(object sender, EventArgs e) timer1.enabled = false; 76

76 tooltip Objeleri ( resim,textbox,label ) üzerine geldiğimizde açıklama vermesidir. Formun yüklenmesi event ta ( Form1_Load) her obje ( textbox,label,buton ) için tanım yaparız. private void Form1_Load(object sender, System.EventArgs e) tooltip1.settooltip(label1,"progressbar'ın yüzdeliklerini gösterir"); tooltip1.settooltip(button1,"progress'i baslatır.."); tooltip1.settooltip(button2,"progress'i durdurur.."); Drag& Drop Yöntemi Toolbox dan iki adet listbox ı forma getiririz. Listbox1 e 3 adet üniversite kayıtı girilir. Lisbox1- properties - Items 77

77 listbox2 ye gelen sürüklenmiş nesneyi kabul et: private void Form1_Load(object sender, System.EventArgs e) listbox2.allowdrop=true; listbox de Mouse ile tutularak sürüklenmek istenek kayıtı al : private void listbox1_mousedown(object sender, System.Windows.Forms.MouseEventArgs e) Point nokta=new Point(e.X,e.Y); int index=listbox1.indexfrompoint(nokta); if(e.button==mousebuttons.left) listbox1.dodragdrop(listbox1.items[index].tostring(),dragdropeffects.all); gelen kayıtı listbox2 de kopya edecegim : private void listbox2_dragover(object sender, System.Windows.Forms.DragEventArgs e) if(e.keystate==1) // hicbir tuş basılı degilse e.effect=dragdropeffects.copy; // copy, All, lint,mode,scroll listebox2 ye kayıtı ekle, listbox1 den sil: private void listbox2_dragdrop(object sender, System.Windows.Forms.DragEventArgs e) listbox2.items.add(e.data.getdata(dataformats.text).tostring()); listbox1.items.remove(e.data.getdata(dataformats.text).tostring()); 78

78 Registry File okuma,yazma Okuma: using Microsoft.Win32; // Ekle private void button1_click(object sender, System.EventArgs e) label1.text=registry.currentuser.opensubkey("control Panel").OpenSubKey("Colors").GetValue("Menu").ToString(); Kayıt : private void button2_click(object sender, System.EventArgs e) Registry.CurrentUser.CreateSubKey("pamukkale").CreateSubKey("kullanıcılar").SetValue("volkan",1240); Değiştirme: private void button3_click(object sender, System.EventArgs e) //directory'ler oldugu için sadece volkanın degeri 5000 olarak degiştirilir. Registry.CurrentUser.CreateSubKey("pamukkale").CreateSubKey("kullanıcılar").SetValue("volkan",5000); 79

79 Silme: private void button4_click(object sender, System.EventArgs e) // degeri silme Registry.CurrentUser.CreateSubKey("pamukkale").CreateSubKey("kullanıcılar").DeleteValue("volkan"); // directory ve altını silme Registry.CurrentUser.CreateSubKey("pamukkale").DeleteSubKeyTree("kullanıcılar"); Registry.CurrentUser.DeleteSubKeyTree("pamukkale"); 80

80 User,Şifre ile Form Giriş Hatırlatma: Önceden kayıt ettiğimizi düşünelim. kullanıcı: volkan, sifre:1240 düşünelim. Registry.CurrentUser.CreateSubKey("pamukkale").CreateSubKey("kullanıcılar").SetValue("volkan",1240); Sifre=Registry.CurrentUser.OpenSubKey("pamukkale").OpenSubKey("kullanıcılar").GetValue(textBox 1.Text).ToString(); ---- textbox1 e volkan girersek sifre 1240 olarak okunur. private static string sifre; private void button5_click(object sender, System.EventArgs e) try sifre=registry.currentuser.opensubkey("pamukkale").opensubkey("kullanıcılar").getvalue(textbox1.text).tostring(); catch textbox1.resettext(); textbox2.resettext(); textbox1.focus(); if(sifre==textbox2.text) Form2 yeni=new Form2(); yeni.show(); else textbox1.resettext(); textbox2.resettext(); textbox1.focus(); label1.text="sifre yanlıs.."; 81

81 User Kontrolu Bazı ekran formlarını belirli kurallarda şablon olarak hazırlayıp diğer formlarda kullanmayı sağlar. Kontrol Hazırlama Kontrol kullanma Hazırlama : Bir textbox ( sadece sayısal girişin oldugu not giriş alanı) hazırlayıp, bu şablonu her form da kullanalım. Form1 e Bir label ve textbox getirelim. 82

82 Kodlamasını yapalım. o Public class ve public in isimlerini değiştirelim. Çünkü Form larda kullanırken bu ismi sürükleyecegiz. Kontrol yapalım. o Bu textbox alana sadece sayılar girelim. Bu textbox ı normal formalarda kullandıgımız gibi ( icersine deger atma veya degerin alma gibi ) kullanamayız. Bu yüzden yedekdegiş isminde bir properties de bulunan bir degisken tanımlayıp bunu kullanıyoruz. private void textbox1_keypress(object sender, System.Windows.Forms.KeyPressEventArgs e) if(e.keychar>=(char)58 (e.keychar<=(char)47)) // rakam dısında if(e.keychar!=(char)8) // backspace tusu e.handled=true; // basılan tus iptal public string yedekdegis get return textbox1.text; // textbox'a girilen degeri yedekdegis'e al set textbox1.text=value.tostring(); // yedekdegis'teki properties veya deger girişi textbox1'a al 83

83 Çalıştırıyoruz ve bir dll üretiyor. Kullanma : Toolbox penceresine bu hazırlamış oldugumuz kontrolu (userkontrol.dll) getiriyoruz. ( toolbox pencersinde -- sağ Mouse - add/remove items -.Net framework components -- browse --- userkontrol.dll - ok ). Ayrıca Toolbox a gelen kontrol dll i sürükleyerek forma getiriyoruz. 84

84 Bir buton tanımlayıp, içersinde kodlama yapıyoruz. Kontrol1 in yedekdegis i messagebox ile ekranda yazdırıyoruz ve yedekdegis e 250 degerini atıyoruz. 85

85 Microsoft Access ile kayıt işlemleri 1.Yöntem: Visual c# projesi yaratılır. Data Sources ( icon yoksa Data -- show data sources ile getiririz) --- add new data source veya Data - add New data source ile Access dosyası ile baglantı kurulur. 86

86 87

87 Data source penceresinde oluşan adres Access table sürükleyerek sayfaya bırakılır. Grid objesi,ileri,geri cubugu ve bağlantı iconları otomatik oluşur. F5 ile bilgileri görebiliriz. 2.Yöntem: Visual c# projesi yaratılır. 88

88 Button ve datagridview tık tık yaparak veya sürükleyerek sayfaya getirilir. Datagrid1 in özelliklerinden datasource a Access dosyasını getiririz. 89

89 Sayfa altında bağlantı iconları oluşur. 90

90 Datagridview1 in datasource unu none yaparak button a cift tıklar ve kodlamayı yaparız. datagridview1.datasource = adresbindingsource; F5 ile veya debug start debugging veya çalıştırma iconu ile çalıştırdıgımız zaman button a tıklarsak listeyi görebiliriz. 91

91 92

92 3.Yöntem: Visual c# projesi yaratılır. Button ve datagridview tık tık yaparak veya sürükleyerek sayfaya getirilir. 93

93 BindingSource iconu sürükleyerek veya tık tık yaparak sayfaya getirilir. Bindingsource --- özelliklerden datasource a Access dosyası girilir. 94

94 95

95 Data member a adres table secilir. Bu arada persondataset adrestableadaptor iconları sayfada oluşur. Button a cift tıklatarak kodlama yazılır.ve F5 ile çalıştırız ve butona tıklayınca sonucu görürürüz. datagridview1.datasource = bindingsource1; 96

96 97

97 Texbox larda gösterme ve önceki, sonraki kayıtlara gecme Visual c# projesi yaratılır. Button,Label ve Texbox tık tık yaparak veya sürükleyerek veya bir kez sayfaya getirdikten sonra copy-paste ile getiririz. 98

98 Label, button objelerin özelliklerden ismini değiştiririz. bindingsource1, sayfaya getirilir. Daha sonra özelliklerden DataSource değerine Access dosyası, DataMember değerine Access table getirilir. 99

99 BindingSource1 in DataSource değerine Access dosyası girilir. 100

100 DataMember değerine adres table ı girilir. Önceden getirdiğimiz BindingSource1 yanında PersonDataSet ve AdresTableAdaptor iconları otomatik oluşur. 101

101 Butonlara tek tek tıklanarak kodlama yapılır. private void Form1_Load(object sender, EventArgs e) // form ilk acılınca this.adrestableadapter.fill(this.persondataset.adres); textbox1.databindings.add("text", persondataset.adres, "nosu"); textbox2.databindings.add("text", persondataset.adres, "adi"); textbox3.databindings.add("text", persondataset.adres, "soyadi"); textbox4.databindings.add("text", persondataset.adres, "sehir"); textbox5.databindings.add("text", persondataset.adres, "tel"); private void button1_click(object sender, EventArgs e) // ilk kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; sonra.position = 0; private void button2_click(object sender, EventArgs e) //Önceki kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; if (sonra.position <= 0) MessageBox.Show("baska kayıt kalmadı.ilk kayıttasınız"); else sonra.position -= 1; private void button3_click(object sender, EventArgs e) // Sonraki kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; if (sonra.position >= sonra.count - 1) MessageBox.Show("baska kayıt kalmadı.son kayıttasınız"); else sonra.position += 1; private void button4_click(object sender, EventArgs e) // En son kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; sonra.position = sonra.count - 1; private void button5_click(object sender, EventArgs e) // Kayıt Silme CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; DialogResult son; son = MessageBox.Show("kayıtı silmek istiyormusunuz...", "silme kontrolu", MessageBoxButtons.YesNo); if (son == DialogResult.Yes) 102

102 sonra.removeat(sonra.position); adrestableadapter.update(persondataset.adres); else MessageBox.Show("kayıt silinmedi..."); private void button6_click(object sender, EventArgs e) // database kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; sonra.endcurrentedit(); // dataset'e (ram) kayıt adrestableadapter.update(persondataset.adres); // database'e kayıt MessageBox.Show("Database kayıt yapıldı.."); private void button7_click(object sender, EventArgs e) // Arama int t = 0, b = 0; CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; foreach (DataRow satir in persondataset.adres.rows) if (satir[0].tostring() == textbox6.text) sonra.position = t; b = 1; return; //for'dan cık t++; if (b == 0) MessageBox.Show("kayıt bulunamadı..."); private void button8_click(object sender, EventArgs e) // Kayıt giriş başlama CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; sonra.addnew(); textbox1.focus(); private void Form1_FormClosed(object sender, FormClosedEventArgs e) // form cıkışta otomatik database'e kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; sonra.endcurrentedit(); // datase'e(ram) kayıt adrestableadapter.update(persondataset.adres); // database'e kayıt private void button9_click(object sender, EventArgs e) Application.Exit(); 103

103 Form dan cıkarken otomatik bir kodlama çalışması için formun boş bir yeri tıklanır. Özelliklerden Event( Triger) bölümde FormClosed cift tıklanarak aşagıdaki kodlama yapılır.yani cıkışta otomatik kayıt yapsın. private void Form1_FormClosed(object sender, FormClosedEventArgs e) // form cıkışta otomatik database'e kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[personDataSet.adres]; sonra.endcurrentedit(); // datase'e(ram) kayıt adrestableadapter.update(persondataset.adres); // database'e kayıt Fonksiyonlu Kullanım private void Form1_Load(object sender, EventArgs e) // form ilk acılınca this.adrestableadapter.fill(this.persondataset.adres); textbox1.databindings.add("text", persondataset.adres, "nosu"); textbox2.databindings.add("text", persondataset.adres, "adi"); textbox3.databindings.add("text", persondataset.adres, "soyadi"); textbox4.databindings.add("text", persondataset.adres, "sehir"); textbox5.databindings.add("text", persondataset.adres, "tel"); private CurrencyManager sonra; private void arac(persondataset aa) //private void arac(dataset aa) //sonra = (CurrencyManager)this.BindingContext[aa.Tables[0]]; sonra = (CurrencyManager)BindingContext[aa.adres]; private void button1_click(object sender, EventArgs e) // ilk kayıt arac(persondataset); sonra.position = 0; 104

104 private void button2_click(object sender, EventArgs e) //Önceki kayıt arac(persondataset); if (sonra.position <= 0) MessageBox.Show("baska kayıt kalmadı.ilk kayıttasınız"); else sonra.position -= 1; private void button3_click(object sender, EventArgs e) // Sonraki kayıt arac(persondataset); if (sonra.position >= sonra.count - 1) MessageBox.Show("baska kayıt kalmadı.son kayıttasınız"); else sonra.position += 1; private void button4_click(object sender, EventArgs e) // En son kayıt arac(persondataset); sonra.position = sonra.count - 1; private void button5_click(object sender, EventArgs e) // Kayıt Silme arac(persondataset); DialogResult son; son = MessageBox.Show("kayıtı silmek istiyormusunuz...", "silme kontrolu", MessageBoxButtons.YesNo); if (son == DialogResult.Yes) sonra.removeat(sonra.position); adrestableadapter.update(persondataset.adres); else MessageBox.Show("kayıt silinmedi..."); private void button6_click(object sender, EventArgs e) // database kayıt arac(persondataset); sonra.endcurrentedit(); // dataset'e (ram) kayıt adrestableadapter.update(persondataset.adres); // database'e kayıt MessageBox.Show("Database kayıt yapıldı.."); private void button7_click(object sender, EventArgs e) // Arama int t = 0, b = 0; arac(persondataset); 105

105 foreach (DataRow satir in persondataset.adres.rows) if (satir[0].tostring() == textbox6.text) sonra.position = t; b = 1; return; //for'dan cık t++; if (b == 0) MessageBox.Show("kayıt bulunamadı..."); private void button8_click(object sender, EventArgs e) // Kayıt giriş başlama arac(persondataset); sonra.addnew(); textbox1.focus(); private void Form1_FormClosed(object sender, FormClosedEventArgs e) // form cıkışta otomatik database'e kayıt arac(persondataset); sonra.endcurrentedit(); // datase'e(ram) kayıt adrestableadapter.update(persondataset.adres); // database'e kayıt private void button9_click(object sender, EventArgs e) Application.Exit(); 106

106 SQL cümleler ile Access erişimi Visual c# projesi yaratılır. Button,Label ve Texbox tık tık yaparak veya sürükleyerek veya bir kez sayfaya getirdikten sonra copy-paste ile getiririz. 107

107 Label, button objelerin özelliklerden ismini değiştiririz. Butonlara tek tek tıklanarak kodlama yapılır. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.OleDb; // yeni eklendi namespace access_sql public partial class Form1 : Form public Form1() InitializeComponent(); // alttaki uc satır eklendi OleDbConnection baglan = new Source=d:\\c#_calis\\person.accdb"); OleDbCommand veri; // yazmada kullanıyoruz OleDbDataReader oku; // okumada kullanıyoruz 108

108 private void temizleme() textbox1.text = null; textbox2.text = null; textbox3.text = null; textbox4.text = ""; textbox5.text = ""; textbox1.focus(); private void d_oku() oku = veri.executereader(); // oku.read(); sadece bu satırı kullanamayız.kayıt olmaz ise sorun verir.o yüzden while ile kullanırız. int kont = 0; while (oku.read()) kont = 1; textbox1.text = oku["nosu"].tostring(); textbox2.text = oku["adi"].tostring(); textbox3.text = oku["soyadi"].tostring(); textbox4.text = oku["sehir"].tostring(); textbox5.text = oku["tel"].tostring(); if (kont == 0) MessageBox.Show("kayıt yoktur..."); oku.close(); baglan.close(); private void Form1_Load(object sender, EventArgs e) private void button10_click(object sender, EventArgs e) // temizleme temizleme(); private void button1_click(object sender, EventArgs e) // ilk kayıt baglan.open(); veri = new OleDbCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres order by nosu asc ", baglan); d_oku(); private void button2_click(object sender, EventArgs e) 109

109 // onceki kayıt baglan.open(); veri = new OleDbCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres where nosu<'" + textbox1.text + "' order by nosu desc", baglan); d_oku(); private void button3_click(object sender, EventArgs e) // sonraki kayıt baglan.open(); veri = new OleDbCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres where nosu>'" + textbox1.text + "' ", baglan); d_oku(); private void button5_click(object sender, EventArgs e) // son kayıt baglan.open(); veri = new OleDbCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres order by nosu desc ", baglan); d_oku(); private void button4_click(object sender, EventArgs e) // arama baglan.open(); veri = new OleDbCommand("select nosu,adi,soyadi,sehir,tel from adres where nosu='" + textbox1.text + "'", baglan); d_oku(); private void button7_click(object sender, EventArgs e) // kayıt etme //veritabanına veri eklerken insert sql cümlesi yazıcaz. baglan.open();//öncelikle bağlantımızı açıyoruz. veri = new OleDbCommand("insert into adres values('" + textbox1.text + "', '" + textbox2.text + "', '" + textbox3.text + "','" + textbox4.text + "','" + textbox5.text + "')", baglan); veri.executenonquery(); temizleme(); baglan.close(); private void button8_click(object sender, EventArgs e) // degiştirme baglan.open(); veri = new OleDbCommand("update adres set nosu='" + textbox1.text + "',adi='" + textbox2.text + "',soyadi='" + textbox3.text + "',sehir='" + textbox4.text + "',tel='" + textbox5.text + "' where nosu='" + textbox1.text + "'", baglan); veri.executenonquery(); 110

110 temizleme(); MessageBox.Show(" Değiştirme yapıldı.."); baglan.close(); private void button6_click(object sender, EventArgs e) // kayıt silme DialogResult son; son = MessageBox.Show("kayıtı silmek istiyormusunuz...", "silme kontrolu", MessageBoxButtons.YesNo); if (son == DialogResult.Yes) baglan.open(); veri = new OleDbCommand("delete from adres where nosu='" + textbox1.text + "' ", baglan); veri.executenonquery(); temizleme(); MessageBox.Show(" Kayıt Silindi..."); baglan.close(); else MessageBox.Show("kayıt silinmedi..."); private void button9_click(object sender, EventArgs e) // Cıkıs Application.Exit(); Microsoft Sql işlemleri Sqlserver 2003,2005,2008 sürümleri vardır. SQL Server 2000 Evaluation Edition: 120 gün kısıtlı kullanıma sahip update edilemeyen (service pack yüklenemeyen) deneme amaçlı kullanılan sürümdür. SQL Server 2000 Developer Edition: Geliştirme amaçlı kullanılan üründür. Genelde yazılım geliştiriciler tarafından kullanılır. Diğer sürümlerde bulunan tüm özelliklere sahiptir. SQL Server 2000 Windows CE Edition: Pocet Pc lerde kullanılan Windows CE işletim sistemleri için geliştirilmiş sürümdür. SQL Server 2000 Desktop Engine (Personal Edition): Maximun 2GB data boyutunu destekleyen olap engine uygulamalarına ambarlık yapabilecek kapasitede olan aynı zamanda maximum workgroup kullanıcılarını destekleyen sürümdür. Server dışındaki bilgisayarlarada kurulabilir. Xp, Win98, WinMe gibi. 111

111 SQL Server 2000 Standart Edition: Windows NT server family üzerine kurulan bilir. Teorik olarak 1,048,516 TB. Data boyutunu destekler. 2 GB memory 4 CPU desteği vardır. SQL Server 2000 Enterprise Edition: Hepsini kapsar.windows NT server family üzerine kurulan bilir Teorik olarak 1,048,516 TB. Data boyutunu destekler. Cluster olarak krulabilir. 64 GB memory 32 CPU desteği vardır. Tabii ki bu destek işletim sistemi ile ilgilidir. SQL Server bit Edition: SQL Server 2000 serisinin en taze ürünüdür. Intel Itanium - tabanlı serverlar üzerinde 64 bit işletim sistemine sahip serverlarda gerçek performansına ulaşılır. SQLserver 2008 SQL Server 2008 Enterprise :SQL Server 2008 Enterprise, kurumsal çevrimiçi işlem ve veri ambarı uygulamalarının yüksek taleplerini karşılayan kapsamlı bir veri platformudur. SQL Server 2008 Standard:SQL Server 2008 Standard departman uygulamalarını çalıştırmak için sınıfının en iyisi kullanım ve yönetim kolaylığı sağlayan tam bir veri yönetimi ve kurumsal zeka platformudur. Özel Sürümler SQL Server 2008 Workgroup :Şubeleri, güvenli uzaktan eşitleme ve yönetim özellikleri sağlayan bu güvenilir veri yönetimi ve raporlama platformunda çalıştırılır. SQL Server 2008 Web :Yüksek kullanılabilir Internet tarafı web hizmeti ortamlarıyla yüksek düşük maliyetli, yüksek ölçekli, yüksek kullanılabilir web uygulamaları veya veri barındırma çözümleri sağlanır. SQL Server 2008 Developer: Sadece geliştirme, test ve gösterim amacıyla geliştirici başına lisans verilen düşük maliyetli SQL Server 2008 Enterprise sürümü. Ücretsiz Sürümler SQL Server 2008 Express :Ücretsiz olarak yükleyebileceğiniz SQL Server 2008 Express, masaüstü ve küçük sunucu uygulamalarını öğrenmek ve oluşturmak ve ISV'ler tarafından dağıtım için idealdir. SQL Server Compact 3.5 :Ücretsiz olarak yüklenebilen SQL Server Compact, geliştiricilerin SQL Server'ı doğrudan uygulamalarına dahil etmesini sağlar ve tüm Microsoft Windows 112

112 platformlarındaki mobil aygıtlar, masaüstü sistemleri ve web istemcileri için arada bir bağlanan ve bağımsız uygulamalar sağlar. Bulut Hizmetleri SQL Azure Veritabanı :Microsoft SQL Azure Veritabanı SQL Server teknolojilerini kullanan bulut tabanlı bir ilişkisel veritabanı hizmetidir. Microsoft tarafından buluttan barındırılan yüksek kullanılabilir, ölçeklendirilebilir, çok müşterili bir veritabanı hizmetidir. SQL Azure Veritabanı, çoklu veritabanlarının kolay bir şekilde sağlanmasına ve uygulanmasına olanak verir. Geliştiricilerin herhangi bir yazılımı kurması, ayarlaması, yama uygulaması veya yönetmesi gerekmez. Yüksek Kullanılabilirlik ve hata toleransı dahilidir ve herhangi bir fiziksel yönetim gerektirmez. SQL Azure Veritabanı Transact-SQL (T-SQL) destekler. Müşteriler T-SQL tabanlı benzer ilişkisel veri modeli ve mevcut programlama araçları hakkındaki bilgilerini kullanabilir. SQL Azure Veritabanı, iki sürüm sağlar: Web Edition ve Business Edition. Microsoft Sql Server 2005 ve Client Management kurulumu Microsoft SQL server2005 Express kurulumu SQLEXPR.EXE -- Install 113

113 114

114 115

115 Microsoft SQL Client Management Kurulumu SQLServer2005_SSMSEE.msi -----> Install 116

116 Eklenmiş olan Microsoft Sql2005 programları Microsoft SQL Server a Giriş SQL Server Management Studio Express ile girilir. 117

117 118

118 Microsoft SQL Database,table oluşturma Sql Server Management Studio Express programına, Windows Vista ve Windows7 de direk giriş yapılmaz. Eğer yapılırsa Database, table oluşturamayız, izin sorunu oluşur.sağ Mouse - yönetici modunda çalıştır olarak gireriz. SQL Server Management Studio Express ile girilir. Databases üzerinde sağ Mouse tıklayarak New Database seçilir. 119

119 Yeni oluşacak olan Database ismini uretim gibi veririz. Microsoft SQL de table oluşturma SQL Server Management Studio Express ile girilir. 120

120 Table oluşturma -Table oluşturmak istediğimiz Database in (Uretim gibi) altında bulunan Tables a tıklarız. Daha sonra sağ mouse ile New Table seçeriz. -nosu,adi, soyadi gibi değişken isimlerini tek tek yazarak table oluştururuz. - Primary key tanımı için nosu üzerinde sağ mouse tılayarak Set primary key seçeriz. - Tanımlı table dan cıkarken, table ismini adres olarak veririz. 121

121 Table Designına giriş (değişken tanımlarına) Data girişi. Sırasıyla Uretim, Tables ve adres tıklanır. adres üzerinde sağ mouse ile Open table seçilerek veriler girilir. Microsoft SQL Server Veri tabanı ve Table isimleri Veritabanı : Uretim Table : adres 122

122 Microsoft Sql ile kayıt işlemleri Access teki 1.yöntem,2.yöntem,3.yöntem ile aynısıdır.sadece table secimi farklıdır. Texbox larda gösterme ve önceki, sonraki kayıtlara gecme de ise table secimi ve kodlama farklıdır. Kodlamada persondataset yerine egitimdataset kullanıyoruz. Table secimi 1. Aşama : Access 1. Yöntem: Access 2. Yöntem: 123

123 Access 3. Yöntem : Texbox larda gösterme ve önceki, sonraki kayıtlara gecme : 124

124 Table secimi 2. Aşama : 125

125 Texbox larda gösterme ve önceki, sonraki kayıtlara gecmede kodlama access deki persondataset egitimdataset olarak değişir. private void Form1_Load(object sender, EventArgs e) // TODO: This line of code loads data into the 'egitimdataset.adres' table. You can move, or remove it, as needed. this.adrestableadapter.fill(this.egitimdataset.adres); textbox1.databindings.add("text", egitimdataset.adres, "nosu"); textbox2.databindings.add("text", egitimdataset.adres, "adi"); textbox3.databindings.add("text", egitimdataset.adres, "soyadi"); textbox4.databindings.add("text", egitimdataset.adres, "sehir"); textbox5.databindings.add("text", egitimdataset.adres, "tel"); private void button1_click(object sender, EventArgs e) // ilk kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; sonra.position = 0; private void button2_click(object sender, EventArgs e) //Önceki kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; if (sonra.position <= 0) MessageBox.Show("baska kayıt kalmadı.ilk kayıttasınız"); 126

126 else sonra.position -= 1; private void button3_click(object sender, EventArgs e) // Sonraki kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; if (sonra.position >= sonra.count - 1) MessageBox.Show("baska kayıt kalmadı.son kayıttasınız"); else sonra.position += 1; private void button4_click(object sender, EventArgs e) // En son kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; sonra.position = sonra.count - 1; private void button5_click(object sender, EventArgs e) // Kayıt Silme CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; DialogResult son; son = MessageBox.Show("kayıtı silmek istiyormusunuz...", "silme kontrolu", MessageBoxButtons.YesNo); if (son == DialogResult.Yes) sonra.removeat(sonra.position); adrestableadapter.update(egitimdataset.adres); else MessageBox.Show("kayıt silinmedi..."); private void button6_click(object sender, EventArgs e) // database kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; sonra.endcurrentedit(); // dataset'e (ram) kayıt adrestableadapter.update(egitimdataset.adres); // database'e kayıt MessageBox.Show("Database kayıt yapıldı.."); private void button7_click(object sender, EventArgs e) // Arama int t = 0, b = 0; CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; foreach (DataRow satir in egitimdataset.adres.rows) if (Convert.ToInt32(satir[0].ToString()) == Convert.ToInt32(textBox6.Text)) 127

127 sonra.position = t; b = 1; return; //for'dan cık t++; if (b == 0) MessageBox.Show("kayıt bulunamadı..."); private void button8_click(object sender, EventArgs e) // Kayıt giriş başlama CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; sonra.addnew(); textbox1.focus(); private void button9_click(object sender, EventArgs e) Application.Exit(); private void Form1_FormClosed(object sender, FormClosedEventArgs e) // form cıkışta otomatik database'e kayıt CurrencyManager sonra = (CurrencyManager)BindingContext[egitimDataSet.adres]; sonra.endcurrentedit(); // dataset'e(ram) kayıt adrestableadapter.update(egitimdataset.adres); // database'e kayıt SQL cümleler ile Microsoft Sql erişimi Access ile Microsoft SQL arasında kod farklılıkları Access using System.Data.OleDb; OleDbConnection OleDbCommand OleDbDataReader Microsoft SQL using System.Data.SqlClient; SqlConnection SqlCommand sqldatareader Access : OleDbConnection baglan = new Source=d:\\c#_calis\\person.accdb"); Microsoft Sql : SqlConnection baglan = new Source=VMBILGISAYAR\SQLEXPRESS3;Initial Catalog=egitim;Integrated Security=True"); 128

128 Access veya M.sql de yukardaki kırmızı renkli bağlantı kodlarını Internet ten bulabiliriz veya Data - Add new data source a denemek için girerek, en sonunda oluşan connection String kodunu copy-paste ile alırız. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; // Microsoft SQL için eklendi namespace access_sql public partial class Form1 : Form public Form1() InitializeComponent(); // alttaki iki satır eklendi // catalog - database ismi(egitim), Data source - Çalışan Microsoft SQL ismi( VMBILGISAYAR\SQLEXPRESS3 ) SqlConnection baglan = new Source=VMBILGISAYAR\SQLEXPRESS3;Initial Catalog=egitim;Integrated Security=True"); SqlCommand veri; // yazmada kullanıyoruz SqlDataReader oku; // okumada kullanıyoruz private void temizleme() 129

129 textbox1.text = null; textbox2.text = null; textbox3.text = null; textbox4.text = ""; textbox5.text = ""; textbox1.focus(); private void d_oku() oku = veri.executereader(); // oku.read(); sadece bu satırı kullanamayız.kayıt olmaz ise sorun verir.o yüzden while ile kullanırız. int kont = 0; while (oku.read()) kont = 1; textbox1.text = oku["nosu"].tostring(); textbox2.text = oku["adi"].tostring(); textbox3.text = oku["soyadi"].tostring(); textbox4.text = oku["sehir"].tostring(); textbox5.text = oku["tel"].tostring(); if (kont == 0) MessageBox.Show("kayıt yoktur..."); oku.close(); baglan.close(); private void Form1_Load(object sender, EventArgs e) private void button10_click(object sender, EventArgs e) // temizleme temizleme(); private void button1_click(object sender, EventArgs e) // ilk kayıt baglan.open(); veri = new SqlCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres order by nosu asc ", baglan); d_oku(); private void button2_click(object sender, EventArgs e) // onceki kayıt baglan.open(); 130

130 veri = new SqlCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres where nosu<'" + textbox1.text + "' order by nosu desc", baglan); d_oku(); private void button3_click(object sender, EventArgs e) // sonraki kayıt baglan.open(); veri = new SqlCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres where nosu>'" + textbox1.text + "' ", baglan); d_oku(); private void button5_click(object sender, EventArgs e) // son kayıt baglan.open(); veri = new SqlCommand("select top 1 nosu,adi,soyadi,sehir,tel from adres order by nosu desc ", baglan); d_oku(); private void button4_click(object sender, EventArgs e) // arama baglan.open(); veri = new SqlCommand("select nosu,adi,soyadi,sehir,tel from adres where nosu='" + textbox1.text + "'", baglan); d_oku(); private void button7_click(object sender, EventArgs e) // kayıt etme //veritabanına veri eklerken insert sql cümlesi yazıcaz. baglan.open();//öncelikle bağlantımızı açıyoruz. veri = new SqlCommand("insert into adres values('" + textbox1.text + "', '" + textbox2.text + "', '" + textbox3.text + "','" + textbox4.text + "','" + textbox5.text + "')", baglan); veri.executenonquery(); temizleme(); baglan.close(); private void button8_click(object sender, EventArgs e) // degiştirme baglan.open(); veri = new SqlCommand("update adres set nosu='" + textbox1.text + "',adi='" + textbox2.text + "',soyadi='" + textbox3.text + "',sehir='" + textbox4.text + "',tel='" + textbox5.text + "' where nosu='" + textbox1.text + "'", baglan); veri.executenonquery(); temizleme(); MessageBox.Show(" Değiştirme yapıldı.."); baglan.close(); 131

131 private void button6_click(object sender, EventArgs e) // kayıt silme DialogResult son; son = MessageBox.Show("kayıtı silmek istiyormusunuz...", "silme kontrolu", MessageBoxButtons.YesNo); if (son == DialogResult.Yes) baglan.open(); veri = new SqlCommand("delete from adres where nosu='" + textbox1.text + "' ", baglan); veri.executenonquery(); temizleme(); MessageBox.Show(" Kayıt Silindi..."); baglan.close(); else MessageBox.Show("kayıt silinmedi..."); private void button9_click(object sender, EventArgs e) // Cıkıs Application.Exit(); 132

132 Console Đşlemleri 133

133 static void Main(string[] args) string isim,adres; Console.WriteLine("kayıt sistemi \n\n ismini giriniz..:"); isim=console.readline(); Console.WriteLine("adresini giriniz..:"); adres=console.readline(); Console.WriteLine("isminiz..:"+isim+"\n"+"adres..:"+adres+" cıkıs için Enter"); Console.ReadLine(); Uygulama : Sınıf gecme hesaplama static void Main(string[] args) Console.WriteLine("degerlendirme yapacakmısınız (E/H)"); string deger; deger=console.readline(); if(deger=="e") degerlendir(); private static void degerlendir() int vize1,vize2,final; double sonuc; Console.WriteLine("birinci vize notu..:"); vize1=convert.toint32(console.readline()); Console.WriteLine("ikinci vize notu..:"); vize2=convert.toint32(console.readline()); Console.WriteLine("final notu..:"); final=convert.toint32(console.readline()); sonuc=(vize1+vize2)*0.2+final*0.6; if(sonuc>=50) Console.WriteLine("sınıfı gectiniz.."); else Console.WriteLine("sınıfı gecemediniz.."); Console.WriteLine("not ortalaması..:"+sonuc.tostring()); Console.WriteLine("degerlendirme yapacakmısınız (E/H)"); string deger; deger=console.readline(); if(deger=="e") degerlendir(); 134

134 Uygulama : Access dosyadan kayıt okuma using System; using System.Data; // ekleme yapıldı using System.Data.OleDb; // ekleme yapıldı static void Main(string[] args) string baglanti = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=d:\\c#_calis\\person.accdb"; DataSet ds_yeni = new DataSet(); OleDbConnection con_yeni = new OleDbConnection(baglanti); OleDbDataAdapter da_yeni = new OleDbDataAdapter("select * from adres", con_yeni); da_yeni.fill(ds_yeni, "adres"); Console.WriteLine(" tüm kayıtlar "); Console.WriteLine(" "); foreach (DataRow satir in ds_yeni.tables[0].rows) Console.WriteLine(satir[1].ToString() + " " + satir[2].tostring() + " " + satir[3].tostring()); Console.ReadLine(); 135

135 Raporlama ( Crystal Reports ) Access dan rapor oluşturma 1.Yöntem: Direk rapor oluşturma 136

136 137

137 Crystalreport1.rpt şeklinde Rapor oluşur. Main report olarak kod kısmını, Main Report Previev olarak çalışmış halini görebiliriz. Project -- add new item - Window form ile form2 ekleriz. Form2 ye bir buton ekleriz ve ismini rapor şeklinde değiştiririz. 138

138 Rapor butona cift tıklayarak aşagıdaki kodu yazarız. Form1 yeni = new Form1(); yeni.show(); 139

139 İlk form Form1 yaratıldıgı için onu değiştirmeliyiz. Yani başlangıc formunu Form2 yaparız.program.cs ye tıklayarak form1 i form2 yaparız. Şimdi F5 veya Debug - start debugging veya çalıştırma iconuna tıklayarak çalıştırırız. 140

140 2.Yöntem: Form üzerinde sonradan rapor oluşturma C# a girilerek form1 oluşturulur. Sonradan Crystal report eklemek ( toolbox a icon olarak gözükmesi için ) için.net framework4 clint profile ın.net framework4 olarak değiştirilmesi gerekir. 141

141 Form2 oluşturulur. Crystal report oluşturulur. 142

142 143

143 Crystalreport1.rpt şeklinde Rapor oluşur. Main report olarak kod kısmını, Main Report Previev olarak çalışmış halini görebiliriz. Form2 ye tıklar. Toolbox tan Crystal report iconu, çift tıklayarak veya sürükleyerek form2 üzerinde rapor oluştururuz. 144

144 Form2 üzerinde crystal report secilerek özelliklerden report source a crystalreport1 secilir. Form1 seceriz( Eğer form1 gizli ise Solution explorer dan form1.cs tıklayarak form1 sayfasını getiririz ).Form1 üzerinde bir buton oluştururuz ve button un ismini rapor olarak değiştiririz. Butona cift tıklayarak kodlama yaparız. 145

145 Form2 yeni = new Form2(); yeni.show(); 146

146 F5 veya Debug - start debugging veya çalıştırma iconuna çalıştırırız. tıklayarak 147

147 Microsoft SQL den rapor oluşturma Access den rapor oluşturma yöntemi ile aynıdır.sadece Erişim olarak sql server kullanırız. 148

148 Şartlı Raporlar Access den belirli kayıt raporu oluşturma C# a girilerek form1 oluşturulur. Sonradan Crystal report eklemek ( toolbox a icon olarak gözükmesi için ) için.net framework4 clint profile ın.net framework4 olarak değiştirilmesi gerekir. 149

149 Form2 oluşturulur. Crystal report oluşturulur. 150

150 Hatırlatma : select * from adres where nosu ="?ykod" - noyu 100 veya,200 gibi tam gireriz. select * from adres where nosu like "?ykod" - noyu 100 veya 1% veya 10% girebiliriz. 1 ile veya 10 ile başlayanları listeler. select * from adres where nosu like "?ykod"&"%" , 1, 10 verebiliriz. 100 veya 1 veya 10 ile başlayanları listeler. Boş girersek hepsini listeler. 151

151 152

152 Crystalreport1.rpt şeklinde Rapor oluşur. Main report olarak kod kısmını, Main Report Previev olarak çalışmış halini görebiliriz. Form2 ye tıklar. Toolbox tan Crystal report iconu, çift tıklayarak veya sürükleyerek form2 üzerinde rapor oluştururuz. 153

153 Form2 üzerinde crystal report secilerek özelliklerden report source a crystalreport1 secilir. Form1 seceriz( Eğer form1 gizli ise Solution explorer dan form1.cs tıklayarak form1 sayfasını getiririz ).Form1 üzerinde bir TextBox ve bir buton oluştururuz ve button un ismini rapor olarak değiştiririz. Butona cift tıklayarak kodlama yaparız. 154

154 public static string kodx; Form2 yeni=new Form2(); kodx=textbox1.text; yeni.show(); 155

155 Form2 sayfasını secer, çift tıklar ve aşagıdaki kodlamayı yaparız. CrystalReport1 rapor = new CrystalReport1(); CrystalDecisions.Shared.ParameterValues parametre = new CrystalDecisions.Shared.ParameterValues(); CrystalDecisions.Shared.ParameterDiscreteValue deger = new CrystalDecisions.Shared.ParameterDiscreteValue(); deger.value = Form1.kodx; parametre.add(deger); rapor.datadefinition.parameterfields["ykod"].applycurrentvalues(parametre); crystalreportviewer1.reportsource = rapor; F5 veya Debug - start debugging veya çalıştırma iconuna çalıştırırız. tıklayarak 156

156 Microsoft SQL den belirli kayıt raporu oluşturma Access den rapor oluşturma yöntemi ile aynıdır.sadece Erişim olarak sql server kullanırız. 1.yöntem : Komut satırı ile 157

157 Hatırlatma : Access de cift tırnak ( ), sql de tek tırnak ( ) kullanıyoruz.access ve Sql de aşagıdaki satırları kopya ile kullanmayalım.kullanırsakta cift veya tek tırnagı orada mutlaka yeniden yazalım. select * from adres where nosu =?ykod - noyu 100 veya,200 gibi tam gireriz. select * from adres where nosu like?ykod - noyu 100% veya 1% veya 10% girebiliriz. 100 ile 1 ile veya 10 ile başlayanları listele.sadece 100 yazamayız. select * from adres where nosu like?ykod% , 1, 10 verebiliriz. 100 veya 1 veya 10 ile başlayanları listele. Boş girersek hepsini listeler. 158

158 2.yöntem : Store procedure kullanımı ile Microsoft Sql Server da sec isminde bir store procedure oluştururuz. CREATE PROCEDURE varchar(25) as select * from adres where GO Hatırlatma: where ,200,300 gibi tam no listelenir. where nosu - 100%,1% girilmelidir.100 ile,1 ile başlayanlar listelenir. where nosu - boş girilirse hepsi, 1girilirse, 1 ile başlayanlar,100 girilirse 100 ile başlayanlar. Microsoft SQL Server a girilir. Sql Server Management Studio Express programına, Windows Vista ve Windows7 de direk giriş yapılmaz. Eğer yapılırsa Database, table oluşturamayız, izin sorunu oluşur.sağ Mouse - yönetici modunda çalıştır olarak gireriz. 159

159 Yazdıgımız procedure önce sağ Mouse -- Save sec.sql gibi saklarız. Sonra çalıştırırız (execute ) yani sec procedure oluşturmuş oluruz. Sakladıgımız procedure sql dosyasını daha sonra istersek kullanabiliriz. O dosyayı görme. Procedure oluşturma 160

160 Oluşan procedure dosyasını görme. Programa bir kez girip cıktıktan sonra veya refresh ederek görebiliriz. Access den rapor oluşturma yöntemi ile aynıdır.sadece Erişim olarak sql server kullanırız. 161

161 Form2 kod sayfasında ] olarak kullanırız. 162

162 CrystalReport1 rapor = new CrystalReport1(); CrystalDecisions.Shared.ParameterValues parametre = new CrystalDecisions.Shared.ParameterValues(); CrystalDecisions.Shared.ParameterDiscreteValue deger = new CrystalDecisions.Shared.ParameterDiscreteValue(); deger.value = Form1.kodx; parametre.add(deger); crystalreportviewer1.reportsource = rapor; 163

163 Cift şartlı kullanma Table erişimi yapılırken - select * from adres where nosu=?ykod and adi=?yadi -- access select * from adres where nosu=?ykod and adi=?yadi -- Microsoft SQL Not: yukardaki kodlar copy ile programa alınırsa cift veya tek tırnak yeniden yazılmalıdır.uyumsuzluk gösteriyor. Form değişiklik -- iki textbox eklenir.nosu ve adı için 164

164 Form2 de kod değişiklik --- CrystalReport1 rapor = new CrystalReport1(); CrystalDecisions.Shared.ParameterValues parametre = new CrystalDecisions.Shared.ParameterValues(); CrystalDecisions.Shared.ParameterDiscreteValue deger = new CrystalDecisions.Shared.ParameterDiscreteValue(); deger.value = Form1.kodx; parametre.add(deger); rapor.datadefinition.parameterfields["ykod"].applycurrentvalues(parametre); deger.value = Form1.adx; parametre.add(deger); rapor.datadefinition.parameterfields["yadi"].applycurrentvalues(parametre); crystalreportviewer1.reportsource = rapor; Form1 botton kodda degişiklik - public static string kodx; public static string adx; Form2 yeni=new Form2(); kodx=textbox1.text; adx=textbox2.text; yeni.show(); 165

165 Raporda işlem yapma Başlık verme Toolbox tan TextObject iconu sürkleyerek sayfa üst bilgisine bırakılır. Sağa sola taşırız. Properties ten rengini ve fontunu veya üst cubuktan değiştirebiliriz. 166

166 String deger olan gun_say ve gun_ucret i integer a cevirme 1) Field Explorer tıklanır. 2) Formula Fields - sağ Mouse - New secilerek ucret ismi verilir. 167

167 3) tonumber formulu yazılarak kaydet ile saklanır.ucret değişkenimiz olmuş oldu.rapor alanlarında ucret degişkenini rapor icerisine sürükleyerek veya cift tıklayarak getirebiliriz. 4) aynı yöntem ile string deger olan gun_say değişkenini integer haline say isminde getiririz. 168

168 5) ucret ve say ile carpım yapılarak brut değişkeni oluştururuz. 6) brut değişkeni sayfa içerine sürüklenir.acıklama olarak üste brut yazısı cıkar.istersek Text Object sürükleyerek de brut acıklaması yazdırabiliriz.textobject sürükleyerek bir alan oluşturuz ve icerisine brut yazarız. 169

169 7) En alta brut degerlerini tbrut alanına toplatalım. 8) tbrut degerini sayfa icerisine sürükleyelim. 9) F5 ile raporu çalıştırırız. 170

Karabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ

Karabük Üniversitesi, Mühendislik Fakültesi...www.ibrahimcayiroglu.com WEB TEKNOLOJİLERİ WEB TEKNOLOJİLERİ VISUAL STUDIO DA YENİ BİR PROJE OLUŞTURMA Visual Studio (VS) programını çalıştırdığımızda karşımıza boş bir ekran gelir. Yeni bir proje oluştururken File>New>Project yolu kullanılarak

Detaylı

İNTERNET TABANLI PROGRAMLAMA

İNTERNET TABANLI PROGRAMLAMA İNTERNET TABANLI PROGRAMLAMA VISUAL STUDIO DA YENİ BİR PROJE OLUŞTURMA Visual Studio (VS) programını çalıştırdığımızda karşımıza boş bir ekran gelir. Yeni bir proje oluştururken File>New>Project yolu kullanılarak

Detaylı

Visual Studio 2010 veya 2013, Sharp Develop 3.2 programlarını kurabilirsiniz.

Visual Studio 2010 veya 2013, Sharp Develop 3.2 programlarını kurabilirsiniz. GÖRSEL PROGRAMLAMA II Visual Studio 2010 veya 2013, Sharp Develop 3.2 programlarını kurabilirsiniz. Başlat/Programlar/Microsoft Visual Studio 2010 çalıştırılır. Açılan programda New Project seçilir, sol

Detaylı

ASP.NET ile Bir Web Sitesi Oluşturma

ASP.NET ile Bir Web Sitesi Oluşturma 29,30 Eylül 2011 ASP.NET ile Bir Web Sitesi Oluşturma ASP.NET sitesi oluşturmak için File menüsündeki, New açılır listesindeki, Web Site komutuna tıklıyoruz Açılan pencereden C# içindeki ASP.NET Web Site

Detaylı

Bilgisayar Programcılığı. Görsel Programlama-I. Öğr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Programcılığı. Görsel Programlama-I. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Programcılığı Görsel Programlama-I Öğr. Gör. Cansu AYVAZ GÜVEN DİYALOG PENCERELERİ MessageBox File Dialog Pencereleri o ColorDialog o FolderBrowserDialog o FontDialog o OpenFileDialog o SaveFileDialog

Detaylı

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik. ASP.NET DERS 1 Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik. Gelen ekranda Visual C# seçildikten

Detaylı

Görsel Programlama (Visual Programming) 2.Hafta

Görsel Programlama (Visual Programming) 2.Hafta Muhammer İLKUÇAR, MAKÜ-2015 BURDUR Görsel Programlama (Visual Programming) 2.Hafta 2014-2015 Bahar Dönemi CLASS YAPISI 1 Muhammer İLKUÇAR, MAKÜ-2011 BURDUR Class - Obje Nesne (Nesne tabanlı programlama)

Detaylı

Response : Sunucunun istemciye veri yollamasını

Response : Sunucunun istemciye veri yollamasını Response : Sunucunun istemciye veri yollamasını 27 Ekim 2011 / Perşembe Örnek : 2 tane sayfa açıyoruz,1nci ye TextBox1 ve Button ekliyoruz. Şunu istiyoruz,1nci sayfada şifre girilince, Button u tıklayınca

Detaylı

Görsel Programlama (Visual Programming)

Görsel Programlama (Visual Programming) Görsel Programlama (Visual Programming) 2014-2015 Bahar Dönemi ListBox 1 2 Bileşeni(Nesnesi) Text Özelliği TextBox nesnesi gibi kullanılabilir 3 Item Ekleme 4 combobox1.maxdropdownitems = 5; combobox1.maxdropdownwidth=200;

Detaylı

Nesne Tabanlı Programlama-1

Nesne Tabanlı Programlama-1 Nesne Tabanlı Programlama-1 Visual Studio 2010 C# 1 Giriş Öğr. Gör. Serkan KORKMAZ 1 Aralık 2015 Visual Studio 2010 Professional Ortamı 2 Visual Studio 2010 Professional Ortamı Visual Studio 2010 çalışma

Detaylı

C#.Net & Linq (Language Integrated Query)

C#.Net & Linq (Language Integrated Query) C#.Net & Linq (Language Integrated Query) Adım-1 Adım-2 Adım-3: aşağıdaki ekran gelir. Bu ekrandan Server Explorer seçeneği ile SQL sunucuya bağlanılırsa Adım-4 deki gibi bir ekran gelir Adım-4: Soldaki

Detaylı

VISUAL C#.NET. CONSOLE EKRANINA YAZI YAZDIRILMASI (using System Kullanılarak Yapılan Uygulama) CONSOLE DERLENMESİ= Debug / Start Without Debugging

VISUAL C#.NET. CONSOLE EKRANINA YAZI YAZDIRILMASI (using System Kullanılarak Yapılan Uygulama) CONSOLE DERLENMESİ= Debug / Start Without Debugging VISUAL C#.NET CONSOLE EKRANINA YAZI YAZDIRILMASI (using System Kullanılarak Yapılan Uygulama) using System; //Console Sınıfının Bulunduğu Kütüphane Programa Eklendi. using System.Collections.Generic; using

Detaylı

Çözüm :RadioButtonList1 kontrolunuekliyoruz.enableautopostback iaktifleştiriyoruz..

Çözüm :RadioButtonList1 kontrolunuekliyoruz.enableautopostback iaktifleştiriyoruz.. 3 Kasım 2011 / Perşembe Örnek : Button a tıklamadan seçim yapınca işlem yapılsın. Çözüm :RadioButtonList1 kontrolunuekliyoruz.enableautopostback iaktifleştiriyoruz.. RadioButtonList1 e tek tıklayıp sağdan

Detaylı

GENETİK ALGORİTMA GEZGİN SATICI ÖDEVİ

GENETİK ALGORİTMA GEZGİN SATICI ÖDEVİ GENETİK ALGORİTMA GEZGİN SATICI ÖDEVİ Aşağıda belli bir yere kadar programlanmış olan Gezgin satıcı problemine ait kodları inceleyerek programın geri kalan kısmını tamamlayınız. Seçme, Çaprazlama ve Mutasyon

Detaylı

24 Kasım 2011 / Perşembe

24 Kasım 2011 / Perşembe 24 Kasım 2011 / Perşembe Evde yüklemek için ServisPack1 yükleniyor.daha sonra Ajax Kontrol Toolkit i yüklüyoruz. 2008 için 3,5 olanı yüklenecek. Geçen hafta nasıl yükleneceği anlatıldı. TextBox1 ve ToolkitScriptManager

Detaylı

VISUAL STUDIO.NET ve Veritabanı

VISUAL STUDIO.NET ve Veritabanı VISUAL STUDIO.NET ve Veritabanı C# Veritabanı (Bilge ADAM) notlarına bakınız. Ms Access ile OLEDB Bağlantı Cümleleri Access e Bağlantı Provider=Microsoft.Jet.OLEDB.4.0; Data Source=DB_Name.mdb; Access

Detaylı

1 Aralık 2011 / Perşembe

1 Aralık 2011 / Perşembe 1 Aralık 2011 / Perşembe Örnek :İki adet panel var.eğer 1nci panelde şifre Mustafa ise kendimiz bir session değişkeni oluşturup tamam yazdıracağız.değilse Şifre hatalı yazdıracağız. protectedvoid Page_Load(object

Detaylı

NOT: VERİTABANINDAKİ TABLOLARI OLUŞTURMAYI DA UNUTMAYACAĞIZ.

NOT: VERİTABANINDAKİ TABLOLARI OLUŞTURMAYI DA UNUTMAYACAĞIZ. 20 Ocak 2012 / Cuma Yeni uygulama Yönetim adlı bir klasör oluşturacağız. Yönetim klasörü içerisine bir masterpage oluşturacağız. (tabloyla) Örneğin; Ana Sayfa Albüm ekle Fotoğraf ekle Content Place Holder(Değişecek

Detaylı

Şekil 2.1. Bu bölümde ASP.Net platformumuzu açtığımızda Toolbox penceresindeki Standart bölümündeki kontrollerden bahsedeceğiz.(şekil 2.2) Şekil 2.

Şekil 2.1. Bu bölümde ASP.Net platformumuzu açtığımızda Toolbox penceresindeki Standart bölümündeki kontrollerden bahsedeceğiz.(şekil 2.2) Şekil 2. 6 7 Server Kontrol Nedir? Kullanıcı arabirimi veya diğer ilişkisel fonksiyonlar oluşturmak üzere Server üzerinde çalışan componentlere denir. Server kontroller runat= server özelliğine sahiptirler. (Şekil

Detaylı

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6 ix Yazılım Nedir? 2 Yazılımın Tarihçesi 3 Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5 Yazılımın Önemi 6 Yazılımcı (Programcı) Kimdir? 8 Yazılımcı Olmak 9 Adım Adım Yazılımcılık 9 Uzman

Detaylı

Nesneye Dayalı Programlama Laboratuvarı

Nesneye Dayalı Programlama Laboratuvarı 2013 2014 Nesneye Dayalı Programlama Laboratuvarı Ders Sorumlusu: Yrd. Doç. Dr. Salih GÖRGÜNOĞLU Laboratuvar Sorumluları: M. Zahid YILDIRIM İÇİNDEKİLER Deney 1: Visual Studio ve C++'a Giriş Uygulamaları...

Detaylı

Her Select Case bloğu, mutlaka End Select ile bitmek zorundadır.

Her Select Case bloğu, mutlaka End Select ile bitmek zorundadır. Select Case Komutu: VB de karar sürecinde kullanılan komutlardandır. Bu yapı ile sadece bir değişkenin durum kontrolü yapılır. Kontrolü yapılacak değişkenin genel olarak alabileceği değerler belirli ise

Detaylı

ASP.NET CLASS KULLANARAK VERİTABANI İŞLEMLERİ

ASP.NET CLASS KULLANARAK VERİTABANI İŞLEMLERİ ASP.NET CLASS KULLANARAK VERİTABANI İŞLEMLERİ Asp.NET mimarisinin temelini oluşturan CLASS yapısını kullanarak veri tabanı işlemlerini nasıl daha az kodla ve daha stabil yapabiliriz bunu göreceğiz. Mevzu

Detaylı

İÇİNDEKİLER İÇİNDEKİLER KODLAB

İÇİNDEKİLER İÇİNDEKİLER KODLAB İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

User Control : Standart bir kullanıcı arabirimi oluşturarak; bir uygulama içinde birden fazla. Siteye User Control Eklemek : 22 Mart 2012 / Perşembe

User Control : Standart bir kullanıcı arabirimi oluşturarak; bir uygulama içinde birden fazla. Siteye User Control Eklemek : 22 Mart 2012 / Perşembe 22 Mart 2012 / Perşembe Yeni web sitesi açtık Üye giriş sayfası yapacağız. User Control : Standart bir kullanıcı arabirimi oluşturarak; bir uygulama içinde birden fazla WebForm kullanılmasını sağlayan

Detaylı

YZM 2105 Nesneye Yönelik Programlama

YZM 2105 Nesneye Yönelik Programlama YZM 2105 Nesneye Yönelik Programlama Yrd. Doç. Dr. Deniz KILINÇ Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi Yazılım Mühendisliği 1 BÖLÜM - 1 GUI Nesneleri ve Visual Studio IDE Kullanımı

Detaylı

İNTERNET TABANLI PROGRAMLAMA- 3.ders

İNTERNET TABANLI PROGRAMLAMA- 3.ders DİZİLER İNTERNET TABANLI PROGRAMLAMA- 3.ders Diziler bir çok bilgiyi tek bir değişken içerisinde tutmamızı sağlayan ifadelerdir. Dizide tutulan bilgiler Ram da tutulur. Elektrikler kesildiğinde dizideki

Detaylı

Masa üstünde vt34.mdb dosyası var, onu projemize eklemek için, App_Data ya sağ tıkla Add Existing Item vt34.mdb adlı dosyayı seç Add

Masa üstünde vt34.mdb dosyası var, onu projemize eklemek için, App_Data ya sağ tıkla Add Existing Item vt34.mdb adlı dosyayı seç Add 29 Aralık 2011 / Perşembe Visual studio dan veri tabanından veri çekmek için önce bir aspx dosyası açıp,,accessde yeni veri tabanı dosyası açıyoruz. Dikkat : Dosyanın uzantısı.mdb olacak. Masa üstünde

Detaylı

string yenisaatdeger; string yenidakikadeger; string yenisaniyedeger;

string yenisaatdeger; string yenidakikadeger; string yenisaniyedeger; PC KAPATMA PROGRAMI using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;

Detaylı

BM-205 GÖRSEL PROGRAMLAMA. Microsoft Visual Studio 2010 ile C# Windows Form Uygulamaları Geliştirme

BM-205 GÖRSEL PROGRAMLAMA. Microsoft Visual Studio 2010 ile C# Windows Form Uygulamaları Geliştirme BM-205 GÖRSEL PROGRAMLAMA Microsoft Visual Studio 2010 ile C# Windows Form Uygulamaları Geliştirme Arş. Gör. Ferhat BOZKURT Atatürk Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Microsoft

Detaylı

Resimlerin üstüne yazı yazacağız. resimyukle.aspx sayfası oluşturuyoruz. http://www.arifceylan.com/asp-net-c-ile-resim-uzerine-yazi-yazma-ve-gosterme/

Resimlerin üstüne yazı yazacağız. resimyukle.aspx sayfası oluşturuyoruz. http://www.arifceylan.com/asp-net-c-ile-resim-uzerine-yazi-yazma-ve-gosterme/ 23 Mart 2012 / Cuma Yeni bir site açıyoruz. Resimlerin üstüne yazı yazacağız. resimyukle.aspx sayfası oluşturuyoruz. http://www.arifceylan.com/asp-net-c-ile-resim-uzerine-yazi-yazma-ve-gosterme/ Namespace

Detaylı

BM 102 Bilgisayar Programlama II. Windows Form Application

BM 102 Bilgisayar Programlama II. Windows Form Application BM 102 Bilgisayar Programlama II Windows Form Application Uygulama 1 İki TextBox girilien sayıların toplamı. Uygulama 1 Windows Form Uygulaması projesi açma Forma iki TextBox ile bir Label ekleme Forma

Detaylı

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

Ders 4: Diziler (Arrays( Arrays) barisgokce.com Ders 4: Diziler (Arrays( Arrays) Hazırlayan : Öğr. Grv.. Barış GÖKÇE Đletişim im : www.barisgokce barisgokce.com Diziler Aynı tipteki bir veri gurubunun bir değişken içinde saklanmasıdır. Veriler Hafızada

Detaylı

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1 Görsel Programlama DERS 03 Görsel Programlama - Ders03/ 1 Java Dili, Veri Tipleri ve Operatörleri İlkel(primitive) Veri Tipleri İLKEL TİP boolean byte short int long float double char void BOYUTU 1 bit

Detaylı

SINIF İÇİ UYGULAMA KODLARI

SINIF İÇİ UYGULAMA KODLARI SINIF İÇİ UYGULAMA KODLARI ARABA HAREKET ETTİRME using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text;

Detaylı

HESAP MAKİNASI YAPIMI

HESAP MAKİNASI YAPIMI HESAP MAKİNASI YAPIMI 1..Aşağıdakine benzer görünüm ve butonları hazırlayın. 2. 24. Butonun içerisine aşağıdaki kodları yazın. 3. Yeni bir layer ekleyip Frame1 F9 na aşağıdaki kodları ekleyelim. 4. Butonlardan

Detaylı

Visual C#.NET 2005 Ders Notları

Visual C#.NET 2005 Ders Notları Visual C#.NET 2005 Ders Notları Doç. Dr. E. Şahin Çonkur Erdem Yıldız Pamukkale Üniversitesi Mühendislik Fakültesi Makine Mühendisliği Bölümü Makine Teorisi ve Dinamiği Anabilim Dalı 1 Microsoft Visual

Detaylı

Matematiksel Operatörler

Matematiksel Operatörler Matematiksel Operatörler Genel olarak matematiksel işlemlerde kullanılan operatörlerdir. Operatör Anlamı Açıklama ^ Üs Alma C^3 Matematikdeki üs operatörüdür. Verilen ilk sayının ikinci sayı kadar kuvvetini

Detaylı

Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz

Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz 9 Şubat 2012 / Perşembe Önce Access açıp,masaüstü ne, vt.mdb adlı veri tabanı dosyasını oluşturuyoruz. Kayıt türünü 2002-2003 seçiyoruz 1) emlakkategorisi adlı tabloyu oluşturuyoruz 1 2) ilanlar adlı tabloyu

Detaylı

EXCEL DE ARİTMETİKSEL İŞLEMLER

EXCEL DE ARİTMETİKSEL İŞLEMLER EXCEL DE ARİTMETİKSEL İŞLEMLER Toplama İşlemi. Bu İşlemleri yapmadan önce ( toplama- Çıkarma Çarpma-Bölme ve formüllerde) İlk önce hücre İçerisine = (Eşittir) işareti koyman gerekir. KDV HESAPLARI ÖRNEK;

Detaylı

FRONT PAGE EĞİTİM NOTLARI BAŞLANGIÇ. 1- Open araç çubuğu düğmesinin yanındaki aşağı oku tıklayarak, web seçeneğini işaretleyin

FRONT PAGE EĞİTİM NOTLARI BAŞLANGIÇ. 1- Open araç çubuğu düğmesinin yanındaki aşağı oku tıklayarak, web seçeneğini işaretleyin FRONT PAGE EĞİTİM NOTLARI BAŞLANGIÇ 1- Open araç çubuğu düğmesinin yanındaki aşağı oku tıklayarak, web seçeneğini işaretleyin 2- Açılan sayfadan, oluşturulmak istenen sitenin içeriğine göre hazır şablon

Detaylı

C Programlama Dilininin Basit Yapıları

C Programlama Dilininin Basit Yapıları Bölüm 2 C Programlama Dilininin Basit Yapıları İçindekiler 2.1 Sabitler ve Değişkenler......................... 13 2.2 Açıklamalar (Expresions)........................ 14 2.3 İfadeler (Statements) ve İfade

Detaylı

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié

BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié BĠLGĠSAYAR PROGRAMLAMA II C++ Programlamaya GiriĢ http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié DERSİN WEB SİTESİ: http://nucleus.istanbul.edu.tr/~bilprog2/ DeğiĢkenler ve Data Türleri

Detaylı

using System; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; using System.Runtime.InteropServices;

using System; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; using System.Runtime.InteropServices; using System; using System.Diagnostics; using System.Drawing; using System.Windows.Forms; using System.Runtime.InteropServices; namespace BMYOWordPad public partial class Form1 : Form // kaydırma çubuğu

Detaylı

İNTERNET TABANLI PROGRAMLAMA- 4.ders

İNTERNET TABANLI PROGRAMLAMA- 4.ders HAZIR FONKSİYONLAR İNTERNET TABANLI PROGRAMLAMA- 4.ders STRING FONKSİYONLARI (KÜTÜPHANESİ) Çoğu web sitesinde olduğu gibi kullanıcıdan kullanıcı adını ve şifresini aldıktan sonra bu değerleri veri tabanından

Detaylı

BİLGİSAYAR DESTEKLİ TASARIM II

BİLGİSAYAR DESTEKLİ TASARIM II 0 BÖLÜM 1 ORCAD PROGRAMINA GİRİŞ: OR-CAD programını başlatmak için Başlat menüsünden programlara gelinir. Programların içerisinde ORCAD Release 9 ve bunun içerisinden de ORCAD Capture seçilir. Karşımıza

Detaylı

1. MİCROSOFT EXCEL 2010 A GİRİŞ

1. MİCROSOFT EXCEL 2010 A GİRİŞ 1. MİCROSOFT EXCEL 2010 A GİRİŞ 1.1. Microsoft Excel Penceresi ve Temel Kavramlar Excel, Microsoft firması tarafından yazılmış elektronik hesaplama, tablolama ve grafik programıdır. Excel de çalışılan

Detaylı

MEKANİZMA TEKNİĞİ (7. Hafta)

MEKANİZMA TEKNİĞİ (7. Hafta) MEKANİZMA TEKNİĞİ (7. Hafta) Mekanizmaların Sayısal ve Programatik Analizi Buraya kadar olan kısımda mekanizmaların üzerindeki tüm uzuvların konum, hız ve ivmelerini analitik yöntemlerle bulmuş olduk.

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

2013-14 GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI

2013-14 GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI 2013-14 GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI KOÜ Mekatronik Mühendisliği Bölümü/MKT-103-Görsel Programlama Dersi - Ara Sınav J-grubu Ad-Soyad:...No:... J GRUBU-süre:70dk 1.) Aşağıdaki

Detaylı

PROGRAMLAMA DERSİ 1. İNTERNET

PROGRAMLAMA DERSİ 1. İNTERNET PROGRAMLAMA DERSİ 1. İNTERNET İnternet sunucu-istemci modeline göre çalışır. Fiziksel olarak bu sistem genelde isteği yapan bir bilgisayar (kullanıcı-client) ve bu isteği karşılayan özel bir bilgisayar

Detaylı

Command Nesnelerini Kullanarak Tablolarda Değişiklik Yapmak:

Command Nesnelerini Kullanarak Tablolarda Değişiklik Yapmak: Command Nesnelerini Kullanarak Tablolarda Değişiklik Yapmak: Command objelerini kullanarak direk veritabanı işlemlerini gerçekleştirebilirsiniz. Dataset nesnesini kullanmadan direk veritabanı içerisindeki

Detaylı

KOCAELİ TEKNİK LİSESİ ELEKTRİK ELEKTRONİK BÖLÜMÜ OTOMASYON ATÖLYESİ EKTS (Elektrik Kumanda Teknikleri Simülatörü ) DERS NOTU. Kaynak : www.veppa.

KOCAELİ TEKNİK LİSESİ ELEKTRİK ELEKTRONİK BÖLÜMÜ OTOMASYON ATÖLYESİ EKTS (Elektrik Kumanda Teknikleri Simülatörü ) DERS NOTU. Kaynak : www.veppa. KOCAELİ TEKNİK LİSESİ ELEKTRİK ELEKTRONİK BÖLÜMÜ OTOMASYON ATÖLYESİ EKTS (Elektrik Kumanda Teknikleri Simülatörü ) DERS NOTU Kaynak : www.veppa.com Hakkında EKTS (Elektrik Kumanda Teknikleri Simülatörü

Detaylı

ÖNDER BİLGİSAYAR KURSU. Microsoft Office Kursu Eğitim İçeriği

ÖNDER BİLGİSAYAR KURSU. Microsoft Office Kursu Eğitim İçeriği ÖNDER BİLGİSAYAR KURSU Microsoft Office Kursu Eğitim İçeriği Microsoft WORD 1. PENCERE ELEMANLARI VE GÖRÜNTÜLEME BİÇİMLERİ 1.1. Genel Bilgiler 1.2. Ekran Görünümleri 1.3. Metin Sınırları ve Basımda Çıkmayan

Detaylı

SİNOP ÜNİVERSİTESİ MESLEK YÜKSEKOKULU MEKATRONİK PROGRAMI

SİNOP ÜNİVERSİTESİ MESLEK YÜKSEKOKULU MEKATRONİK PROGRAMI SİNOP ÜNİVERSİTESİ MESLEK YÜKSEKOKULU MEKATRONİK PROGRAMI BİLGİSAYARDA PROGRAMLAMA DERSİ ÖRNEK PROGRAMLAR 1. Kullanıcının girdiği iki sayını toplamını bulan program. Form: int sayi1, sayi2, toplam; sayi1

Detaylı

Aynı tipten çok sayıda değişken topluluğudur. X Y Score1 Score2 (0) (1) (2)...

Aynı tipten çok sayıda değişken topluluğudur. X Y Score1 Score2 (0) (1) (2)... Array (Diziler) Array Aynı tipten çok sayıda değişken topluluğudur. Birden fazla aynı tipteki değerle işlem yapmayı kolaylaştırır. X Y Score1 Score2 40 56 Grade 40 56 80 (0) (1) (2)... (13) Array tanımlama:

Detaylı

Yazılım Kodlama ve İ simlendirme Standartları v1.0

Yazılım Kodlama ve İ simlendirme Standartları v1.0 Yazılım Kodlama ve İ simlendirme Standartları v1.0 İçerik Yazılım Kodlama ve İsimlendirme Standartları... 2 1. Amaç... Hata! Yer işareti tanımlanmamış. 2. Kapsam... Hata! Yer işareti tanımlanmamış. 3.

Detaylı

MASTER PAGE SAYFASI KULLANIMI

MASTER PAGE SAYFASI KULLANIMI MASTER PAGE SAYFASI KULLANIMI Hazırladığımız Web sayfalarında sayfanın belli bölgelerinin sürekli sabit kalmasını istiyorsak ve bazı kısımlarının değişmesini istiyorsak Master Page Sayfası kullanırız.

Detaylı

NPratik Yazılım Kurulum Kılavuzu. Yedekleme İşlemi

NPratik Yazılım Kurulum Kılavuzu. Yedekleme İşlemi NPratik Yazılım Kurulum Kılavuzu Herhangi bir neden ile bilgisayarınızı formatlamadan önce NPratik Yazılım Verilerinizi yedeklemeniz gerekmektedir. Programı ilk defa kuruyorsanız NPratik Yazılım Kurulum

Detaylı

Ders 8: Metotlar. barisgokce.com

Ders 8: Metotlar. barisgokce.com Ders 8: Metotlar Hazırlayan : Öğr. Grv.. Barış GÖKÇE Đletişim im : www.barisgokce barisgokce.com Metotlar C# içerisinde bir veya birden fazla kod bulunduran kod bloklarıdır. Bir nesnenin veya sınıfın programı

Detaylı

C#.NET ile PROGRAMLAMAYA GİRİŞ

C#.NET ile PROGRAMLAMAYA GİRİŞ C#.NET ile Neden C#.NET programlama dili? C, Java ailesinden bir programlama dilidir Platformdan (işletim sistemi-makine) bağımsız yazılım geliştirme Nesne tabanlı (OOP Object Orianted Programming) Consol,

Detaylı

2014-2015 EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

2014-2015 EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI 2014-2015 EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI İşletim Sisteminde Yapılan Uygulamalar Bir Bilgisayarda Hangi İşletim Sistemi Yüklü Olduğunu

Detaylı

Bu Hafta Öğreneceklerimiz

Bu Hafta Öğreneceklerimiz Bu Hafta Öğreneceklerimiz Bu Hafta Öğreneceklerimiz Klavye, tuşlardan oluşan ve bilgisayardaki veri giriş işlemlerini yapan önemli bir donanım birimidir. Bilgisayarda yazı yazabilmek, veri ve komut girişi

Detaylı

ASP.NET 1. DURUM YÖNETİMİ. BLM 318 e-ticaret ve Uyg. Durum Yönetimi Nedir? Durum Yönetimi: Karșılaștırma İÇERİK. Sunucu-taraflı Durum Yönetimi

ASP.NET 1. DURUM YÖNETİMİ. BLM 318 e-ticaret ve Uyg. Durum Yönetimi Nedir? Durum Yönetimi: Karșılaștırma İÇERİK. Sunucu-taraflı Durum Yönetimi Nedir? olmadan Login.aspx Bilgilerinizi giriniz Durum Yönetimi İle Login.aspx Bilgilerinizi giriniz Adınız Adınız Pınar Pınar Soyadınız Soyadınız Onay Durdu Onay Durdu Gönder Gönder ASP.NET - 1 sayfa.aspx

Detaylı

Ç NDEK LER 1 MOB L DÜNYA 1 Girifl 1 Mobil Cihazlar 1 Mobil Cihazlar n Devrimi 5 iphone 6 Blackberry 6 Android flletim Sistemli Cihazlar 7 Windows

Ç NDEK LER 1 MOB L DÜNYA 1 Girifl 1 Mobil Cihazlar 1 Mobil Cihazlar n Devrimi 5 iphone 6 Blackberry 6 Android flletim Sistemli Cihazlar 7 Windows Ç NDEK LER 1 MOB L DÜNYA 1 Girifl 1 Mobil Cihazlar 1 Mobil Cihazlar n Devrimi 5 iphone 6 Blackberry 6 Android flletim Sistemli Cihazlar 7 Windows Mobile Destekleyen Cihazlar 7 Mobil Cihazlar n Gelecekteki

Detaylı

DENEME SINAVI CEVAP ANAHTARI

DENEME SINAVI CEVAP ANAHTARI DENEME SINAVI CEVAP ANAHTARI ECDL BAŞLANGIÇ Bilgisayarı Kullanmak ve Dosyaları Yönetmek 1) Bilgisayar ı doğru şekilde kapatıp, açmak için uygun metodu uygulayınız.(bilgisayarı kapatın ve tekrar açın.)

Detaylı

1 Barkomatik Barkod Otomasyon Sistemi 2009-2013

1 Barkomatik Barkod Otomasyon Sistemi 2009-2013 1 Barkomatik Barkod Otomasyon Sistemi 2009-2013 BarkomatikPOS Barkomatik Mucizesi olarak bilinen bilgisayarsız sistemlerimizin kolay ve hızlı kullanım özeliği olan yazılımlarına paralel olarak hazırlanan

Detaylı

Excel Nedir? Microsoft Excell. Excel de Çalışma sayfası-tablo

Excel Nedir? Microsoft Excell. Excel de Çalışma sayfası-tablo Microsoft Excell Excel Nedir? Excel programı; veriler üzerinde hesap yapabilme, verileri tabloya dönüştürebilme, verileri karşılaştırıp sonuç üretebilme, grafik oluşturma, veri yönetimi yapabilir. http://mf.dpu.edu.tr/~eyup

Detaylı

Usta Aritmetik Bayi Kontrol Programı Kullanım Kılavuzu (V.1.3.0)

Usta Aritmetik Bayi Kontrol Programı Kullanım Kılavuzu (V.1.3.0) Usta Aritmetik Bayi Kontrol Programı Kullanım Kılavuzu (V.1.3.0) A. Öğretmen Girişi a b c d B. Ana Menü a. Kullanıcı bilgisi : Bu alana yazılacak bilgiyi size Usta Aritmetik firması sağlamaktadır. b. Şifre

Detaylı

SATIŞ EKRANININ KULLANIMI:

SATIŞ EKRANININ KULLANIMI: , Teperes KULLANIM PROGRAMI ÇALIŞTIRMAK: Programı çalıştırmak için masa üstündeki, Teperes Sale simgesine çift tıklayınız. Açılan pencerede işlem yapılacak P.O.S u ( point tof sale) seçiniz ve satış görünümüne

Detaylı

Bilgisayar Programlama MATLAB

Bilgisayar Programlama MATLAB What is a computer??? Bilgisayar Programlama MATLAB Prof. Dr. İrfan KAYMAZ What Konular is a computer??? MATLAB ortamının tanıtımı Matlab sistemi (ara yüzey tanıtımı) a) Geliştirme ortamı b) Komut penceresi

Detaylı

ADO.NET VERİTABANINA BAĞLANTI. Bir web formu üzerinden veritabanına bağlantımızı anlatacağım. UYGULAMA 1

ADO.NET VERİTABANINA BAĞLANTI. Bir web formu üzerinden veritabanına bağlantımızı anlatacağım. UYGULAMA 1 ADO.NET Web üzerinden veritabanına bağlanmak ve veri işlemleri gerçekleştirmek için ADO.NET teknolojinden faydalanarak işlemlerimizi gerçekleştireceğiz. ADO.NET her ne kadar ADO teknolojine benzesede aslında

Detaylı

ASP.NET M U S T A F A K I L I Ç M C S E, M C D B A

ASP.NET M U S T A F A K I L I Ç M C S E, M C D B A ASP.NET M U S T A F A K I L I Ç B İ L. T E K. Ö Ğ R. M C S E, M C D B A ASP.Net Nedir? ASP.Net Server-Side(Sunucu taraflı) web uygulamaları geliştirebileceğimiz. Net in sağladığı özelliklerin çoğuna erişebilen

Detaylı

VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI

VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI VISUAL BASIC DE İŞLETİM SİSTEMİ DENETİM KOMUTLARI VE FONKSİYONLARI Visual basic kodları yazılırken, yapılması istenen işlerin yanı sıra sistem ile ilgili bazı işlerin yapılması da (klasör oluşturma silme,

Detaylı

EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb)

EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb) EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb) İçindekiler EBA Dosya Nedir?... 1 Kimler kullanabilir?... 2 Uygulama Ne işe Yarar?... 2 Sisteme internet üzerinden giriş nasıl yapılır?... 2 Yeni bir klasör

Detaylı

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA

EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA 6. HAFTA EBG101 PROGRAMLAMA TEMELLERİ VE ALGORİTMA Öğr. Gör. S. M. Fatih APAYDIN apaydin@beun.edu.tr EMYO Bülent Ecevit Üniversitesi Kdz. Ereğli Meslek Yüksekokulu ALGORİTMA ÖRNEK1: İki sayının toplamı

Detaylı

Burak Kıymaz 13.10.2015 JAVA FX

Burak Kıymaz 13.10.2015 JAVA FX JavaFx neden çıktı? JAVA FX Eskiden desktop için swing kullanılırdı fakat pek iyi değildi. Javafx bu konuda css kullanmaya da izin verdiği için daha iyi bulundu. xml veriyi biçimlendirmek için kullanılan

Detaylı

TABLOSAL VERĐLERĐ EDĐTLEME YENĐ SUTUN EKLEME

TABLOSAL VERĐLERĐ EDĐTLEME YENĐ SUTUN EKLEME TABLOSAL VERĐLERĐ EDĐTLEME YENĐ SUTUN EKLEME ArCatolog üzerinde oluşturulmuş veri depoları olan shapfile ve Feature class vektör verilerin tablosal değerleri ve bunları amaca uygun olarak oluşturmak ve

Detaylı

7) Çoklu Formlar. Şekil7.1. Araç kutusundaki Add Form butonuna basarak projeye yeni bir form ekleyiniz.

7) Çoklu Formlar. Şekil7.1. Araç kutusundaki Add Form butonuna basarak projeye yeni bir form ekleyiniz. 7) Çoklu Formlar Şimdiye kadar yarattığınız tüm projeler tek bir form tarafından işletilmektedir. Farklı amaca yönelik bilgiler için farklı pencereler kullanırsanız projelerinizin daha profesyonel olabileceğinin

Detaylı

--------------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------------------------- freedcamp.com internet üzerinde online olarak proje yönetimini sağlayan bir sistemdir. Kullanıcılara değişik yetkilerin verilebildiği, görevler atanabildiği, dosya paylaşımının ve tartışma ortamlarının

Detaylı

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir.

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir. SQL PROGRAMLAMA BATCH Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı deyimidir. SELECT. UPDATE...... DELETE.. BATCH BATCH Özellikleri 1- Bir batch içinde bir deyimde yazım hatası olduğunda

Detaylı

Data Structures Lab 1 2012-Güz

Data Structures Lab 1 2012-Güz Data Structures Lab 1 2012-Güz C# Ortamı Tanıtımı ve Uygulama Geliştirilmesi Visual Studio 2010 Ortamının Temini -NYG'ndan MSDN üyeliği için başvuru dilekçesi alınıp doldurulmalı ve yine NYG'ye teslim

Detaylı

Algoritma ve Programlama: Karar Yapıları ve Döngüler

Algoritma ve Programlama: Karar Yapıları ve Döngüler Algoritma ve Programlama: Karar Yapıları ve Döngüler Bir algoritma, herhangi bir programlama dili (C, C++, Pascal, Visual Basic, Java gibi) ile kodlandığında program haline gelir. Algoritmada yer alan

Detaylı

Boğaziçi Üniversitesi Bilgi İşlem Merkezi. Web Yönetimi Birimi. Drupal Kullanım Kılavuzu

Boğaziçi Üniversitesi Bilgi İşlem Merkezi. Web Yönetimi Birimi. Drupal Kullanım Kılavuzu Boğaziçi Üniversitesi Bilgi İşlem Merkezi Web Yönetimi Birimi Drupal Kullanım Kılavuzu KONULAR 1. Kullanıcı Girişi Yapma 2. Ana Menüyü Düzenleme 3. Site Logosunu Düzenleme 4. Yeni Sayfa Ekleme / Düzenleme

Detaylı

10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI

10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI 10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI Sayısal Sistemler Sayısal sistem, sayıları temsil eden simgeler için bir yazma sistemi yani matematiksel bir gösterim sistemidir.

Detaylı

İNTERNET TABANLI PROGRAMLAMA- 11.ders FORM UYGULAMASI (DROPDOWN BİLGİ YÜKLEME, VALIDATION KONTROLLERI, PAREMETRELİ KAYIT YAPMA)

İNTERNET TABANLI PROGRAMLAMA- 11.ders FORM UYGULAMASI (DROPDOWN BİLGİ YÜKLEME, VALIDATION KONTROLLERI, PAREMETRELİ KAYIT YAPMA) İNTERNET TABANLI PROGRAMLAMA- 11.ders FORM UYGULAMASI (DROPDOWN BİLGİ YÜKLEME, VALIDATION KONTROLLERI, PAREMETRELİ KAYIT YAPMA)

Detaylı

Örnek : TextBox1,RangeValidator,Button,Label girelim.0-100 aralığında değer girilmesini istiyoruz. Label1.Text=TextBox1.Text ;

Örnek : TextBox1,RangeValidator,Button,Label girelim.0-100 aralığında değer girilmesini istiyoruz. Label1.Text=TextBox1.Text ; 10 Kasım 2011 / Perşembe RangeValidator : Belirlenen bir aralıkta değer girilmesini kontrol eder.örneğin bir tarih veya sayı aralığı ile veri girişini sınırlamak istediğimizde kullanırız. Bunun için şu

Detaylı

SPSS-Tarihsel Gelişimi

SPSS-Tarihsel Gelişimi SPSS -Giriş SPSS-Tarihsel Gelişimi ilk sürümü Norman H. Nie, C. Hadlai Hull ve Dale H. Bent tarafından geliştirilmiş ve 1968 yılında piyasaya çıkmış istatistiksel analize yönelik bir bilgisayar programıdır.

Detaylı

Proje 1. Arayüz Tasarımı

Proje 1. Arayüz Tasarımı Proje 1. Arayüz Tasarımı 1. Yeni bir android projesi oluşturalım. Proje ismi: ArayuzTasarimi ve aktivity adı: ArayuzTasarimi olarak yazalım. 2. Projejiyi oluşturduktan sonra bize hazır olarak gelen dosyalar:

Detaylı

Web sayfalarında en önemli bir konu halini alan bilgi girişi ve bunların kontrollerini yapan kontrollerdir (Şekil 3.1). Şekil 3.1

Web sayfalarında en önemli bir konu halini alan bilgi girişi ve bunların kontrollerini yapan kontrollerdir (Şekil 3.1). Şekil 3.1 VALIDATION KONTROLLER 26 Web sayfalarında en önemli bir konu halini alan bilgi girişi ve bunların kontrollerini yapan kontrollerdir (Şekil 3.1). Şekil 3.1 Kullanıcıların hatasız ve eksiksiz olarak formların

Detaylı

MT4 Platformu u Kullanıcı Kılavuzu ARALIK 2011

MT4 Platformu u Kullanıcı Kılavuzu ARALIK 2011 MT4 Platformu u Kullanıcı Kılavuzu ARALIK 2011 Platformun Başlat latılması Program indirme linki: http://www.gedik.com/liveupdate liveupdate/gedikforex4setup. /gedikforex4setup.zip Program çift tıklayarak

Detaylı

2005-2009 Tarihleri Arasında Avkom da Yazdığım Programlar 1 Avkomix Başlama Tarihi: Haziran 2007 Database LKS (Muhasebe Programından Gelen Veriler, Fatura, Konsinye, Banka, vb.) AvkomERP.mdb (Kendi veritabanımız,

Detaylı

İÇİNDEKİLER BİRİNCİ BÖLÜM BİLGİSAYARDA BELGE AÇMAK VE TEMEL İŞLEMLER YAPMAK

İÇİNDEKİLER BİRİNCİ BÖLÜM BİLGİSAYARDA BELGE AÇMAK VE TEMEL İŞLEMLER YAPMAK İÇİNDEKİLER BİRİNCİ BÖLÜM BİLGİSAYARDA BELGE AÇMAK VE TEMEL İŞLEMLER YAPMAK 1. BELGE İŞLEMLERİ... 1 1.1. Arayüz ve Görünüm Ayarları... 1 1.1.1. Genel Görünüm... 1 1.1.2. Belge Görünümleri... 2 1.1.3. Yakınlaştırma...

Detaylı

BİLGİSAYAR PROGRAMLAMA

BİLGİSAYAR PROGRAMLAMA BİLGİSAYAR PROGRAMLAMA Yrd. Doç. Dr. Beytullah EREN beren@sakarya.edu.tr 0264 295 5642 1 MİCROSOFT EXCEL Elektronik tablolama veya hesaplama programı olarak da adlandırılan Excel, girilen veriler üzerinde

Detaylı

WEB PROGRAMLAMA. PHP Temelleri 2. Dr. Erman Yukselturk

WEB PROGRAMLAMA. PHP Temelleri 2. Dr. Erman Yukselturk WEB PROGRAMLAMA PHP Temelleri 2 Dr. Erman Yukselturk Superglobal Değişkenler 1/4 Php de önceden tanımlanmış ve script in herhangi bir yerinden çağrılabilen ve çalıştirılabilen çevreye özel bilgiler sunan

Detaylı

Flash ile Etkileşimli Öğretim Materyali Hazırlama Semineri

Flash ile Etkileşimli Öğretim Materyali Hazırlama Semineri Öğretim Teknolojileri Destek Ofisi Instructional Technologies Support Office Flash ile Etkileşimli Öğretim Materyali Hazırlama Semineri Semboller, Ses Ekleme, Video Ekleme Orta Doğu Teknik Üniversitesi

Detaylı

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz,

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz, ORGANİZATİONAL UNİT (OU) OrganizationUnit(OU): Türkçe Yapısal Birim olarak adlandırılan ve merkezi yönetimimizi kolaylaştıran bir objedir. Organizational Unit domain içerisindeki kullanıcı, group ve bilgisayarları

Detaylı

Java Programlamaya Giriş

Java Programlamaya Giriş Java Programlamaya Giriş Amaçlar: 1. Java kurulumu (Netbeans ve JDK) 2. Java Netbeans Kullanımı 3. Program yazma Java Kurulumu Java dili ile programlama yapabilmek için java jdk ve java kodlama yapılabilecek

Detaylı

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler

C# Programlama Dili. İlk programımız Tür dönüşümü Yorum ekleme Operatörler C# Programlama Dili İlk programımız Tür dönüşümü Yorum ekleme Operatörler 1 İlk Programımız Bu program konsol ekranına Merhaba dünya! yazıp kapanır. Programı geçen derste anlatıldığı gibi derleyin, sonra

Detaylı

MICROSOFT WORD 2002. Şekil 1 TABLO HAZIRLAMA : Word 2002/II TAB AYARLARI :

MICROSOFT WORD 2002. Şekil 1 TABLO HAZIRLAMA : Word 2002/II TAB AYARLARI : MICROSOFT WORD 2002 TAB AYARLARI : Yazımı belli bir sütundan başlatmak için kullanılır. Tab (durak) ayarı yapıldıktan sonra her Tab tuşuna basıldığında eklenti noktası yerleştirilen tab ayarlarına gelir.

Detaylı