Selamat Membaca

SELAMAT MEMBACA

Minggu, 28 Oktober 2012

Random Number


Dalam pemrograman Visual C# .Net, memungkinkan untuk melakukan generate angka acak(random numbers) dengan menggunakan Random Class. Lalu, apa sih Random Class itu ??

Secara definisi,
"Represents a pseudo-random number generator, a device that produces a sequence of numbers that meet certain statistical requirements for randomness."
http://msdn.microsoft.com/en-us/library/system.random.aspx

Berikut ini cara contoh menggunakan Random Class di Visual C# .Net :

Dan hasil dari code diatas seperti sebagai berikut :

Fungsi random angka ini bisa kita gunakan untuk random karakter, karena pada dasarnya karakter itu berupa angka(kode ASCII). Sehingga kita tinggal ubah angka yang didapat dari hasil random tersebut menjadi sebuah karakter. Contoh :
Random rand = new Random();
int i = rand.Next(312);
Console.WriteLine("Angka " + i.ToString() + " => " + (char)i);

Menggerakkan Tombol Object dengan Tombol Keyboard



Masih tetep sama tema postingan sebelumnya, tentang tutorial menggunakan Macromedia Flash. Disini gue bukan masternya lho, gue hanya share apa yang gue pelajarin. Gimana sih cara biar objek bisa kita gerakan dengan keyboard?



Biasanya kita liat digame-game flash itu karakter atau objek bisa bergerak kan? Mungkin ini dasar dari itu semua. Kita harus belajar segala sesuatunya dari dasarnya dulu, Asik dah #RidwanQuote! Hahaha. Gak usah lama-lama dengerin curhatan gue deh, mendingan langsung aja masuk ke tutornya. So, keep stay yoo~
Step 1
Yang pasti kalian buka dulu dah tuh Macromedia Flash-nya. Kalo udah, sekarang kalian buat objek. Bebas, kotak, bulet, segitiga, x -_- Muehehe. Dari gambar juga bisa.

"Macromedia Flash | Cara Menggerakan Objek"

Step 2
Setelah objek kalian buat, select objek lalu tekan F8 untuk meng-convert ke simbol. Beda dengan post sebelumnya yang memilih type Button, kali ini kita pilih type Movie clip, next pilih OK.

"Macromedia Flash | Cara Menggerakan Objek"

Step 3
Lanjut ke step berikutnya. Sekarang kita main sedikit di script-nya. Select objek trus teken F9 untuk masuk ke menu Action. Nah, disini kalian tulis script-nya.



"Macromedia Flash | Cara Menggerakan Objek"

Step 4
Pastiin kalo script yang kalian tulis itu sama kaya yang ada diatas yoo~ Kalo udah selesai nulis scriptsi-nya #halah! Gak pake "SI", cuma "SCRIPT" doang. Kalo udah selesai nulis script-nya itu artinya sudah jadi. Tekan CRTL + Enter untuk mencoba-nya. Monggo dicoba~


"Macromedia Flash | Cara Menggerakan Objek"



sumber: http://www.oneeblog.com/2012/04/tutorial-macromedia-flash-cara.html
 

Jumat, 05 Oktober 2012

Membaca dan Menampilkan File Text di C#



Pertama kita harus punya path file yang akan dibaca. Untuk mbuka path file, C# sudah punya sebuah class dialog bernama openFile.
Cara makainya gini :

openFile.ShowDialog();
textBox1.Text = openFile.FileName;
path = textBox1.Text;
Nah baris pertama buat mbuka open file dialog, baris kedua buat ngambil path file yang kita pilih (satu aja), baris ketiga ya nyimpen ke variabel namanya path.
Setelah itu kita bisa mbuka filenya dengan perintah:

StreamReader freader = File.OpenText(path);
Nah, abis gitu kita baca filenya dengan perintah:
string nyoba;

while (freader.EndOfStream==false)
{
buffer = freader.ReadLine();
proses(buffer);
isiFile += buffer;
}
Perintah di atas artinya membaca file, trus ditaruh di string nyoba sampai end of stream.
Kelemahan sintax di atas apa hayo?
Kelemahannya karakter “\n” atau ganti baris dalam file nggak dibaca. kalo pengen ya baris isiFile+= buffer jadi gini:

isiFile += buffer + “\n”;
Udah jadi.
Nah studi kasus kedua, gimana kalo kita butuh mbaca semua file langsung, nggak perbaris. Lebih gampang lagi. Nggak perlu panjang-panjang, n nggak perlu looping malah. Cukup:

StreamReader freader = File.OpenText(path);
isiFile = freader.ReadToEnd();

Menampilkan Gambar di C#


Menampilkan atau mengambil gambar dengan C# pada database yang support SqlClient yaitu SQL Server :
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            textIdPerabot.Text = dataGridView1.CurrentRow.Cells[0].Value.ToString();
            comboModel.Text = dataGridView1.CurrentRow.Cells[1].Value.ToString();
            comboKategori.Text = dataGridView1.CurrentRow.Cells[2].Value.ToString();
            textNmaPerabot.Text = dataGridView1.CurrentRow.Cells[3].Value.ToString();
            textHarga.Text = dataGridView1.CurrentRow.Cells[4].Value.ToString();
            Byte[] byteBLOBData = new Byte[0];
            byteBLOBData = (Byte[])(dataGridView1.CurrentRow.Cells[5].Value);
            MemoryStream stmBLOBData = new MemoryStream(byteBLOBData);
            pictureBox1.Image = Image.FromStream(stmBLOBData);
        }
Menyimpan gambar dengan VB.NET pada database yang support ODBC misal MySQL :
    Private Sub BtnUpdatePic_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnUpdatePic.Click
        Dim tpic As Byte() = System.IO.File.ReadAllBytes(txtFile.Text)
        Dim con As New OdbcConnection
        con.ConnectionString = "driver={mysql odbc 3.51 driver};server=localhost;database=karyawan;uid=root;password= ;"
        con.Open()
        Dim cmd As New OdbcCommand
        cmd.Connection = con
        cmd.CommandType = CommandType.Text
        'PARAMETER HARUS PAKAI TANDA TANYA ? KHUSUS UNTUK ODBC
        cmd.CommandText = "UPDATE peserta SET gambar = ? WHERE idpeserta = '102' " ',@total)"
      
        cmd.ExecuteNonQuery()
       
        cmd.Dispose()
        con.Close()
   End Sub
Menampilkan atau mengambil gambar dengan VB.NET pada database yang support  ODBC misal MySQL  :
    Private Sub BtnViewPictMysql_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnViewPictMysql.Click
        Dim fstream As New IO.FileStream(IO.Path.GetDirectoryName(Application.ExecutablePath) & "\tmp.dat", IO.FileMode.Create)
        'fstream.Write(bs.Item(bs.Position)(4), 0, System.Buffer.ByteLength(bs.Item(bs.Position)(4)))
        'fstream.Write(dgv1.Rows(0).Cells("gambar").Value, 0, System.Buffer.ByteLength(dgv1.Rows(0).Cells("gambar").Value))
        fstream.Write(dgv1.SelectedRows(0).Cells("gambar").Value, 0, System.Buffer.ByteLength(dgv1.SelectedRows(0).Cells("gambar").Value))
        PicFoto.Image = Image.FromStream(fstream)
        'PicFoto.SizeMode = PictureBoxSizeMode.Zoom
        fstream.Close()
    End Sub
Cara lain menyimpan gambar binary ke database dengan C#.NET :
            con.open
            string query = "update Jenis_Penyakit set gambar=@gambar where NAMA_PENYAKIT = '" + dgGambarPenyakit.Rows[dgGambarPenyakit.SelectedRows[0].Index].Cells[1].Value.ToString() + "'";
            if (myconn.State.ToString() != "Open")
                myconn.Open();
            SqlCommand cmd = new SqlCommand(query, myconn);
            cmd.Parameters.Add("@gambar", SqlDbType.Image, 0 , "");
            cmd.Parameters[0].Value = tpic;
            cmd.ExecuteNonQuery();
Cara lain mengambil/menampilkan gambar binary dari database dengan C#.NET :
        private void dgGambarPenyakit_Click(object sender, EventArgs e)
        {
          
            myconn = koneksi.CON;
            SqlCommand cmdSelect = new SqlCommand("SELECT GAMBAR FROM JENIS_PENYAKIT WHERE NAMA_PENYAKIT = '" + dgGambarPenyakit.Rows[dgGambarPenyakit.SelectedRows[0].Index].Cells[1].Value.ToString() + "'", this.myconn);
           
            myconn.Open();
            byte[] barrImg = (byte[])cmdSelect.ExecuteScalar();
            if (barrImg != null)
            {
                string strfn = Convert.ToString(DateTime.Now.ToFileTime());
                FileStream fs = new FileStream(strfn,
                                  FileMode.CreateNew, FileAccess.Write);
                fs.Write(barrImg, 0, barrImg.Length);
                fs.Flush();
                fs.Close();
                this.myconn.Close();
                picPenyakit.Image = Image.FromFile(strfn);
            }
            else
            {
                picPenyakit.Image = null;
            }
        }
Cara lain menyimpan gambar binary ke database dengan VB.NET :
tpic = File.ReadAllBytes(oSketsa.FileName)
        If (tpic.GetType.ToString() <> "System.Object") Then
            da.UpdateCommand.Parameters("@Sketsa").Value = tpic
        End If
        'cm.Parameters.Add("@Sketsa", OdbcType.VarChar, 0, "").Value = pathCAD
        cm.ExecuteNonQuery()
        cn.Close()
Cara lain mengambil/menampilkan gambar binary dari database dengan VB.NET :
If (bs.Item(bs.Position)(4).GetType.ToString() <> "System.DBNull") Then
                Dim fstream As New FileStream(Path.GetDirectoryName(Application.ExecutablePath) & "\sket.dat", FileMode.Create)
                fstream.Write(bs.Item(bs.Position)(4), 0, System.Buffer.ByteLength(bs.Item(bs.Position)(4)))
                pSketsa.Image = Image.FromStream(fstream)
                pSketsa.SizeMode = PictureBoxSizeMode.Zoom
                fstream.Close()
            Else
                pSketsa.Image = Nothing
            End If
       
Menyimpan Gambar di Database MySQL dengan MySQLOledb
Public Function SiswaInsert(ByVal Siswa As Siswa) As MySqlDataReader
            Try
                Dim ms As MemoryStream = New MemoryStream()
                Siswa.Foto.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg)
                Dim Pic_arr(ms.Length) As Byte
                ms.Position = 0
                ms.Read(Pic_arr, 0, Pic_arr.Length)
                Dim StrSQL As String = "INSERT INTO siswa" & _
               " (Nis,Kelas_ID,Tahun_ID,Nama,Kota_lahir,Tanggal_lahir,Gender,Agama,Alamat,Telepon,Terima_dkelas,Tgl_terima,Id_ThnAjaran,Sekolah_asal,Anak_ke,Status_anak,Nama_Ayah,Nama_Ibu,Pekerjaan_Ayah,Pekerjaan_Ibu,Penghasilan_Ortu,Alamat_Ortu,Telp_Ortu,Foto_Siswa) " & _
               " VALUES (@Nis,@Kelas_ID,@Tahun_ID,@Nama,@Kota_lahir,@Tanggal_lahir,@Gender,@Agama,@Alamat,@Telepon,@Terima_dkelas,@Tgl_terima,@Id_ThnAjaran,@Sekolah_asal,@Anak_ke,@Status_anak,@Nama_Ayah,@Nama_Ibu,@Pekerjaan_Ayah,@Pekerjaan_Ibu,@Penghasilan_Ortu,@Alamat_Ortu,@Telp_Ortu,@Foto_Siswa);"
                Dim myCommand As MySqlCommand = New MySqlCommand(StrSQL, myconnection.open)
                myCommand.CommandType = CommandType.Text
                Dim parameterS_Nis As MySqlParameter = New MySqlParameter("@Nis", MySqlDbType.VarChar, 4)
                parameterS_Nis.Value = Siswa.Nis
                Dim parameterS_Kelas As MySqlParameter = New MySqlParameter("@Kelas_ID", MySqlDbType.Int16)
                parameterS_Kelas.Value = Siswa.Kelas
                Dim parameterS_Angkatan As MySqlParameter = New MySqlParameter("@Tahun_ID", MySqlDbType.Int16)
                parameterS_Angkatan.Value = Siswa.Angkatan
                Dim parameterS_Nama As MySqlParameter = New MySqlParameter("@Nama", MySqlDbType.VarChar, 50)
                parameterS_Nama.Value = Siswa.Nama
                Dim parameterS_KotaLahir As MySqlParameter = New MySqlParameter("@Kota_lahir", MySqlDbType.VarChar, 30)
                parameterS_KotaLahir.Value = Siswa.KotaLahir
                Dim parameterS_TglLahir As MySqlParameter = New MySqlParameter("@Tanggal_lahir", MySqlDbType.Date)
                parameterS_TglLahir.Value = Siswa.TglLahir
                Dim parameterS_Kelamin As MySqlParameter = New MySqlParameter("@Gender", MySqlDbType.VarChar, 1)
                parameterS_Kelamin.Value = Siswa.Kelamin
                Dim parameterS_Agama As MySqlParameter = New MySqlParameter("@Agama", MySqlDbType.VarChar, 10)
                parameterS_Agama.Value = Siswa.Agama
                Dim parameterS_Alamat As MySqlParameter = New MySqlParameter("@Alamat", MySqlDbType.VarChar, 100)
                parameterS_Alamat.Value = Siswa.Alamat
                Dim parameterS_Telepon As MySqlParameter = New MySqlParameter("@Telepon", MySqlDbType.VarChar, 15)
                parameterS_Telepon.Value = Siswa.Telepon
                Dim parameterS_TerimadKelas As MySqlParameter = New MySqlParameter("@Terima_dkelas", MySqlDbType.VarChar, 30)
                parameterS_TerimadKelas.Value = Siswa.TerimadKelas
                Dim parameterS_TglTerima As MySqlParameter = New MySqlParameter("@Tgl_terima", MySqlDbType.Date)
                parameterS_TglTerima.Value = Siswa.TglTerima
                Dim parameterS_ThnAjaran As MySqlParameter = New MySqlParameter("@Id_ThnAjaran", MySqlDbType.Int16)
                parameterS_ThnAjaran.Value = Siswa.ThnAjaran
                Dim parameterS_AsalSekolah As MySqlParameter = New MySqlParameter("@Sekolah_asal", MySqlDbType.VarChar, 30)
                parameterS_AsalSekolah.Value = Siswa.AslSekolah
                Dim parameterS_AnakKe As MySqlParameter = New MySqlParameter("@Anak_ke", MySqlDbType.VarChar, 30)
                parameterS_AnakKe.Value = Siswa.AnakKe
                Dim parameterS_StatusAnak As MySqlParameter = New MySqlParameter("@Status_anak", MySqlDbType.VarChar, 30)
                parameterS_StatusAnak.Value = Siswa.StatusAnak
                Dim parameterS_NamaAyah As MySqlParameter = New MySqlParameter("@Nama_Ayah", MySqlDbType.VarChar, 50)
                parameterS_NamaAyah.Value = Siswa.NamaAyah
                Dim parameterS_NamaIbu As MySqlParameter = New MySqlParameter("@Nama_Ibu", MySqlDbType.VarChar, 50)
                parameterS_NamaIbu.Value = Siswa.NamaIbu
                Dim parameterS_KerjaAyah As MySqlParameter = New MySqlParameter("@Pekerjaan_Ayah", MySqlDbType.VarChar, 30)
                parameterS_KerjaAyah.Value = Siswa.KerjaAyah
                Dim parameterS_KerjaIbu As MySqlParameter = New MySqlParameter("@Pekerjaan_Ibu", MySqlDbType.VarChar, 30)
                parameterS_KerjaIbu.Value = Siswa.KerjaIbu
                Dim parameterS_HasilOrtu As MySqlParameter = New MySqlParameter("@Penghasilan_Ortu", MySqlDbType.VarChar, 100)
                parameterS_HasilOrtu.Value = Siswa.PenghaslianOrtu
                Dim parameterS_AlamatOrtu As MySqlParameter = New MySqlParameter("@Alamat_Ortu", MySqlDbType.VarChar, 100)
                parameterS_AlamatOrtu.Value = Siswa.AlamatOrtu
                Dim parameterS_TelpOrtu As MySqlParameter = New MySqlParameter("@Telp_Ortu", MySqlDbType.VarChar, 15)
                parameterS_TelpOrtu.Value = Siswa.TelponOrtu
                Dim parameterS_Foto As MySqlParameter = New MySqlParameter("@Foto_Siswa", MySqlDbType.Blob)
                parameterS_Foto.Value = Pic_arr
                With myCommand.Parameters
                    .Add(parameterS_Nis)
                    .Add(parameterS_Kelas)
                    .Add(parameterS_Angkatan)
                    .Add(parameterS_Nama)
                    .Add(parameterS_KotaLahir)
                    .Add(parameterS_TglLahir)
                    .Add(parameterS_Kelamin)
                    .Add(parameterS_Agama)
                    .Add(parameterS_Alamat)
                    .Add(parameterS_Telepon)
                    .Add(parameterS_TerimadKelas)
                    .Add(parameterS_TglTerima)
                    .Add(parameterS_ThnAjaran)
                    .Add(parameterS_AsalSekolah)
                    .Add(parameterS_AnakKe)
                    .Add(parameterS_StatusAnak)
                    .Add(parameterS_NamaAyah)
                    .Add(parameterS_NamaIbu)
                    .Add(parameterS_KerjaAyah)
                    .Add(parameterS_KerjaIbu)
                    .Add(parameterS_HasilOrtu)
                    .Add(parameterS_AlamatOrtu)
                    .Add(parameterS_TelpOrtu)
                    .Add(parameterS_Foto)
                End With
                Dim result As MySqlDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
                Return result
            Catch SqlEx As MySqlException
                Throw New Exception(SqlEx.Message.ToString())
            End Try
        End Function
Mengambil Gambar dari MySQL dengan MySQLOledb
Dim objDataTable As New DataTable
    Private Sub btnOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click
        Try
            Dim DataControl As New AccessData.DataControl
            Dim myData As DataSet = DataControl.GetDataSet("Select * from siswa where nis = '" & txtNis.Text & "'")
            objDataTable = myData.Tables("data")
            If objDataTable.Rows.Count > 0 Then
                AddSiswa.Show()
                AddSiswa.txtNis.Text = objDataTable.Rows(0)("nis").ToString
                AddSiswa.txtNama.Text = objDataTable.Rows(0)("nama").ToString
                Dim stmBLOBData As MemoryStream = New MemoryStream()
                stmBLOBData.Write(objDataTable.Rows(0)("Foto_Siswa"), 0, System.Buffer.ByteLength(objDataTable.Rows(0)("Foto_Siswa")))
                AddSiswa.PictureBox1.Image = Image.FromStream(stmBLOBData)
           Else
                MsgBox("Data Tidak Ditemukan")
            End If
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
Sumber: http://cariprogram.blogspot.com/2012/05/menyimpan-dan-mengambil-gambar-binary.html