05:08

CustomDrawCell

Gidip gried view üzerinden Run Designer a tıklayın daha sonra şimşek işaretine ordan
CustomDrawCell i bulun ve üzerine 2 defa tıklayın açılan kod sayfasında

Private Sub gv_CustomDrawCell(ByVal sender As System.Object, ByVal e As DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs) Handles gv.CustomDrawCell

end sub

arasına aşağıda verdim koda benzer şekilde kodunuzu düzenleyin ve renklendirin


If (Utils.Nvl(gv.GetRowCellValue(e.RowHandle, "GIZLI"), 0) = 1) Then
e.Appearance.BackColor = Color.Olive
e.Appearance.ForeColor = Color.White
End If
If (Utils.Nvl(gv.GetRowCellValue(e.RowHandle, "EVRAKTUR"), "") = "A") Then
e.Appearance.BackColor = Color.Red
e.Appearance.ForeColor = Color.White
End If

A adli evrak ise demek

00:32

gried view

Bu yazıda gried view içersinde oluşturduğumuz column ların kaçtane oldugunu eğer onların içersinde bir değer varsa toplamlarını bulmayı anlatacağım

örnekleyecek olursak bir gried view içersinde databaseden kişileri ve maaşları çekiyorsunuz ve bu kişilere ait gelen verilerde ne kadar maaş ödediğinizi öğrenmek istiyorsunuz hemen gried view altında kod falan yazmanıza gerek yok yapmanız gereken

1) gried view Run Designer ına gelin -> views açın ordan -> OptionsViews a tıklayın oradan -> showfooter ı True yapın

sonra ise

2) Run Designer -> Columns a gelin hangi column için işlem yaptıracaksanız onun üzerine bir defa tıklayın ve ardından

Summary Item da ki + işaretine tıklayın daha sonra orda bulunan SummaryType tıklayın
orada sum min max average hangisini istiyorsanız seçin.

İyi Çalışmalar.

06:18

Tarih Kontrolü ve Focuslanma

Arkadaşlar Merhaba ;

Kullanıcıdan alınan ikitane farklı tarih alıp ona göre istediğimiz işlemi yaptırmayı anlatacağım ama öncelikle

2 tane dateEdit Ekleyelim veya textBox ekleyelim dateEdit1 bizim gelen Evrak
dateEdit2 ise bizim giden evrak ı ifade etsin

If (dateEdit1.Text.Trim <> "" And dateEdit2.Text.Trim <> "") bu kontrolü tarih alanlarından herhangi biri boş bırakılmasın diye kontrol ediyorum sonra
else if lede convert ederek tarihleri check edeceğim ve ekrana bir tane mesaj msgBox ilede hata mesajı yazıdıracagım orada gördüğünüz messageBox sizde msgBox olarak görünecektir.
Sonunda return false ile geldiğ yere geri dönecek.

If (dateEdit1.Text.Trim <> "" And dateEdit2.Text.Trim <> "") Then
ElseIf (Convert.ToDateTime(dateEdit1.Text) > Convert.ToDateTime(dateEdit2.Text)) Then
MessageBox.Show("dateEdit1 Tarihi dateEdit2 Tarihinden büyük olamaz", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Information)
dateEdit1.Focus() : dateEdit1.Select()
Return False
End If

focus lanarak hatanın oldugu yere düzleltmesi için geri dönecektir. : işaretin anlamı hani alt satıra geçmek yerine küçük bir kod : koydum ve devam ettim :) kolay gelsin.

05:59

Veri Tipleri

Veri Tipi Değer büyüklük
Boolean True-False 2 Bayt

Byte 0-255 1 Bayt

Char Tek bir Unicode karakteri tutar 2 Bayt

Date 01.01.01 tarihi 00:00:00 ssati 31.12.9999 23.59.59 8 Bayt

Decimal Maksimum 29 haneli sayı tutar +/1 79.147 arasıdır bu değerler. 16 Byte

Double negatif sayı aralığı -1,79769E+308 ile -4,94065E-324
pozitif sayı aralığı 4.94065E-324 ile 1,79769E+308 değer alır. 8Byte

Int32 -2,147,438,648 -2,147,438,647 4 Byte

Int16 32,768 - 32767 2 byte 2 Byte

Int64 -9,223,372,036,854,775,808 - 8 Byte
9,223,372,036,854,775,807.

Single Negatif Sayi aralığı -3,4028235E+38 ile -1.401298E-45
Pozitif Sayi aralığı 1,401298E-45 ile 3,4028235E+38 4 Byte

String Maksimum 2,147,483,647 Unicode karakter tutar

12 E -3 ifadesi 12*0,001 demektir

int16=Short
int32=Integer
int64=Long

05:35

VB Değişken Tanımlama

Değişkenler Dim Anahtar Kelimesi ile Tanımlanır.

dim değşken_adı As Değişken_Tipi şeklinde olur
örn:
dim sure As Integer
dim alfabe As String
dim alfabe de doğru kullanımdır ama tipi biliniyorsa yazmak performasn açısından önemlidir. yani ilk iki örnek daha doğrudur bu yüzden.

Boşluk, nokta, soru işareti vb değişken adı olamaz
Sayi ile başlayamazsınız.
keyword yani vb kendi dilinde tanımlı anahtar kelimeleri kullanmazsınız.

dim dim as double yanlış olur
dim (sayi) as Short yanlış olur
dim 3asd as Integer yanlış olur
dim "kelime" as String yanlış olur bunlara dikkat edin.

dim değişken1,değişken2 As Integer doğru bir kulanımdır.
yine atama yapmak istersek = operatoru kulanmamız yeterli olacaktır.

dim adsoyad As String = " Mesut ALTINYAPRAK " DOĞRU BİR KULLANIMDIR

Dim ile oluşturulan bir değişkene ancak kendi scope (kapsama alanı ) içersinden ulaşabilirsiniz. bu değişkenler bellkete saklanırlar. değişkenleri tanımlandıkları yer kullanaılacağı amaca göre seçilmelidr. yani bir değişken ir defa kullanılacaksa form içersinde tutulabilir ama bir değişken birden fazla formda kullanılacaksa class tanımlamaları gerekmektedir. bun tarz işler performansı artırır.

Dim sözcüğü, "Boyut" anlamına gelen Dimension kelimesinin kısaltmasıdır...
bu şekilde tanımlanan değişkenler Object (Nesne) tipindendir. Yani Her türlü veriyi Tutabilirler. tabi bunlar performanısı önemli ölçüde düşürürler.
İyi Çalışmalar.

06:45

V.B merkez bankasından dolar kuru çekmek

Arkadaşlar vb ile merkez bankasından xml kullanarak dolar kuru çek diye aratığınızda bir sürü hikaye çıkar en basit ve temiz olanı

1) bir tane forum açın

içine bir tane griedwiev ekleyin ben adına gwxml dedim

2 ) kod sayfasına gelin page load un içine

Dim dsXmlReader As New DataSet
dsXmlReader.ReadXml("http://www.tcmb.gov.tr/kurlar/today.xml ")
gwxml.DataSource = dsXmlReader.Tables(1)

yazın ve run edin hepsi bukadar :D

isim dediğimde yerde index veya tablo ismini vereceksiniz örneğin merkez bankasında 2 tane indexi var 0=Tarih_Date 1=currency


veya

Dim dsXmlReader As New DataSet
dsXmlReader.ReadXml("http://www.tcmb.gov.tr/kurlar/today.xml ")
gwxml.DataSource = dsXmlReader.Tables("Currency")

yazıncada verileri görebilirsiniz.

peki bu tablo isimlerini nasıl görebiliriz mailli için ekran görüntüsü aşağıda



dsXmlReader.ReadXml("http://www.ensonhaber.com/sitemap.xml ") kodun yazdığı yere kahverengi noktanın olduğu yere bir defa tıklayın sizde de o nokta olacak.

sonra kodu run edin
daha sonra f10 basın kodun üstü kırmızı altı sarı olacak daha sonra

dsXmlReader kodnun üstünü seçin bekleyin büyüteç göreceksiniz ona tıklyaın



artık index yada tablo isimleri karşınızda birinci tablonun ilk indexi sıfırdır 0 1 2 diye gidiyor dikkat edin buna :)
İyi Çalışmalar...

09:31

MERGE SORT ANIMATİON

Merge sort ile ilgili güzel bir animasyon olmuş

http://www.cse.iitk.ac.in/users/dsrkg/cs210/applets/sortingII/mergeSort/mergeSort.html

konuyu da burdan takip edebilirsiniz...

http://www.personal.kent.edu/~rmuhamma/Algorithms/MyAlgorithms/Sorting/mergeSort.htm