Delicious Digg Facebook Favorites More Stumbleupon Twitter
Blog seputar hobby

Monday, May 19, 2014

Posted by Unknown 1:06 AM
1 comment

Oke, kali ini saya akan mencoba berbagi kepada teman-teman mengenai aplikasi sederhana "Cetak ganjil genap".

Aplikasi sederhanan ini berfungsi untuk mengetahui bilangan ganjil dan genap dari rentang bilangan yang sudah ditentukan oleh pengguna. Pengguna tinggal memasukan batas awal dan batas akhir kemudian pilih jenis bilangan yg ingin diketahui (Ganjil/ Genap).

Berikut adalah penjelasan mengenai cara membuat aplikasi.

Buat tampilan seperti gambar dibawah ini:


Berikut adalah source code nya.

package com.example.cetakbilangan;

import java.util.ArrayList;
import java.util.Arrays;

import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.webkit.WebChromeClient.CustomViewCallback;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.TextView;
import android.os.Build;

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment())
                    .commit();
        }
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    /**
     * A placeholder fragment containing a simple view.
     */
    public static class PlaceholderFragment extends Fragment {
    public Button bCetak, bReset;
    public MediaPlayer mp;
    public RadioGroup groupJenisBilangan;
    public TextView tDari, tSampai;
    public ListView listBilangan;
    public RadioButton opGanjil, opGenap;
    public String pilihanBilangan="ganjil";
   
    int dari=0;
    int sampai=0;
    //LIST OF ARRAY STRINGS WHICH WILL SERVE AS LIST ITEMS
    ArrayList<String> listItems =  new ArrayList<String>(Arrays.asList(""));

    ArrayAdapter<String> adapter;
        
        public PlaceholderFragment() {
        }

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            View rootView = inflater.inflate(R.layout.fragment_main, container, false);
            
            listBilangan=(ListView) rootView.findViewById(R.id.listBilangan);
            adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_dropdown_item_1line, listItems);
            listBilangan.setAdapter(adapter);
            
            tDari = (TextView) rootView.findViewById(R.id.tDari);
            tSampai = (TextView) rootView.findViewById(R.id.tSampai);
            
            bCetak = (Button) rootView.findViewById(R.id.bCetak);
            bCetak.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
dari = Integer.parseInt(tDari.getText().toString());
sampai = Integer.parseInt(tSampai.getText().toString());
adapter.setNotifyOnChange(true);
adapter.clear();
mp = MediaPlayer.create(getActivity(), R.raw.tone);
mp.setLooping(false);
mp.start();
Toast.makeText(getActivity(), "Anda memilih bilangan: " + pilihanBilangan , Toast.LENGTH_LONG).show();
          for (int bilangan=dari ; bilangan<= sampai; bilangan++) {
               if(pilihanBilangan.equals("ganjil")){
if((bilangan%2)!=0){
//bilangannya[bilangan]= String.valueOf(bilangan).toString();
adapter.add(Integer.toString(bilangan).toString());
}
}else if(pilihanBilangan.equals("genap")){
if((bilangan%2)==0){
adapter.add(Integer.toString(bilangan).toString());
}
}
          }
          
          //adapter.notifyDataSetChanged();
 
/*for(int bilangan=dari;dari<=sampai;bilangan++){
if(pilihanBilangan.equals("ganjil")){
if(bilangan%2!=0){
//bilangannya[bilangan]= String.valueOf(bilangan).toString();
//adapter.add(Integer.toString(bilangan));
}
}else if(pilihanBilangan.equals("genap")){
if(bilangan%2==0){
//adapter.add(Integer.toString(bilangan));
}
}
}*/
// adapter.notifyDataSetChanged();
}
});
            
           
            bReset = (Button) rootView.findViewById(R.id.bReset);
            bReset.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
tDari.setText("");
tSampai.setText("");
adapter.clear();
opGanjil.setChecked(false);
opGenap.setChecked(false);
}
});
            
           groupJenisBilangan = (RadioGroup) rootView.findViewById(R.id.groupJenisBilangan);
           opGanjil = (RadioButton) rootView.findViewById(R.id.opGanjil);
           opGenap = (RadioButton) rootView.findViewById(R.id.opGenap);
           
           groupJenisBilangan.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
switch (checkedId) {
case R.id.opGanjil:
Toast.makeText(getActivity(), "Anda memilih bilangan: " + opGanjil.getText().toString() , Toast.LENGTH_LONG).show();
pilihanBilangan = "ganjil";
break;
case R.id.opGenap:
Toast.makeText(getActivity(), "Anda memilih bilangan: " + opGenap.getText().toString() , Toast.LENGTH_LONG).show();
pilihanBilangan = "genap";
break;
}
}
});
            return rootView;
        }
    }

}

sekian. Terimakasih.


Wednesday, April 2, 2014

Posted by Unknown 12:29 AM
No comments
Postingan kali ini saya akan memaparkan kepada pembaca cara membuat aplikasi Android sederhana yaitu program untuk Menghitung Keliling Segitiga Sembarang.

Saya asumsikan Anda sudah mengerti mengenai tools yang harus digunakan untuk membuat aplikasi android (Android Development Tool, SDK dan Android Device).

Baik langsung mulai saja, pertama buat project baru dengan nama KelilingSegitigaSembarang.






Buka file fragmen_main.xml yang ada di folder res->layouts.

 Klik tab untuk menampilkan script nya.


kemudian masukan kode berikut ini setelah  tools:context="com.example.kelilingsegitigasembarang.MainActivity$PlaceholderFragment" >:

    <TextView
        android:id="@+id/lJudul"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/judul" />
    <TextView
        android:id="@+id/labelSisi1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="23dp"
        android:text="@string/labelSisi1" />
    <EditText
        android:id="@+id/tSisi1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/labelSisi1"
        android:layout_below="@+id/labelSisi1"
        android:ems="10"
        android:inputType="number" >
        <requestFocus />
    </EditText>
    <EditText
        android:id="@+id/tSisi3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/TextView02"
        android:layout_below="@+id/TextView02"
        android:ems="10"
        android:inputType="number" />
    <EditText
        android:id="@+id/tSisi2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/TextView01"
        android:layout_below="@+id/TextView01"
        android:ems="10"
        android:inputType="number" />
    <TextView
        android:id="@+id/TextView02"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/tSisi2"
        android:layout_below="@+id/tSisi2"
        android:layout_marginTop="14dp"
        android:text="@string/labelSisi3" />
    <TextView
        android:id="@+id/TextView01"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/tSisi1"
        android:layout_below="@+id/tSisi1"
        android:layout_marginTop="14dp"
        android:text="@string/labelSisi2" />
    <TextView
        android:id="@+id/TextView03"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/tHasil"
        android:layout_below="@+id/tSisi3"
        android:layout_marginTop="16dp"
        android:text="@string/labelHasil" />
    <EditText
        android:id="@+id/tHasil"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/tSisi3"
        android:layout_below="@+id/TextView03"
        android:ems="10"
        android:inputType="number" />
    <Button
        android:id="@+id/bHitung"
        style="@style/AppBaseTheme"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/tHasil"
        android:layout_marginTop="18dp"
        android:text="@string/labelButtonHitung" />
    <Button
        android:id="@+id/bReset"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/bHitung"
        android:layout_toRightOf="@+id/bHitung"
        android:text="@string/labelButtonReset" />

Kenapa, aya error?. Tenang Belum selesai, selanjutnya buka file strings.xml yang ada di folder res->values kemudian masukan kode berikut ini setelah <resource>:
<string name="app_name">KelSegitigaSembarang</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
<string name="judul">Keliling Segitiga Sembarang</string>
<string name="labelSisi1">Sisi 1</string>
<string name="labelSisi2">Sisi 2</string>
<string name="labelSisi3">Sisi 3</string>
<string name="labelHasil">Hasil</string>
<string name="labelButtonHitung">Htiung</string>
<string name="labelButtonReset">Reset</string>
 Selanjutnya buka file MainActivity.java yang ada di folder src tambahkan kode berikut:
Cari script seperti pada baris 57, kemudian tambahkan script dibawahnya (Maaf, untuk bagian ini saya buat gambar :D).
Selanjutnya:
Cari script seprti pada baris 63, kemudian tambahkan script dari baris 66 sampai 85.

Selesai, berikut screen shoot aplikasi saat dijalankan di emulator.

Download File APK Nya.

Sunday, January 26, 2014

Posted by Unknown 5:57 AM
2 comments

Desain Form Aplikasi:


Source Code aplikasi:

Imports System.Data.OleDb
Imports word = Microsoft.Office.Interop.Word

Public Class Form1
    Public koneksi As OleDbConnection = Nothing
    Public command As OleDbCommand = Nothing
    Public reader As OleDbDataAdapter = Nothing
    Function Connect()
        If Not koneksi Is Nothing Then
            koneksi.Close()
        End If
        koneksi.Open()
        Return koneksi
    End Function
    Function Closedd()
        koneksi.Close()
        Return koneksi
    End Function

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If Not koneksi Is Nothing Then koneksi.Close()

        Dim koneksiString As String

        koneksiString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\02. PERPUSTAKAAN\Kuliah\Semester 5\Visual Programming\aplikasiPenjualanSederhanan\db_penjualan.accdb"

        Try
            koneksi = New OleDbConnection(koneksiString)
            koneksi.Open()
            Me.Text = "Form Penjualan Barang"
            koneksi.Close()
        Catch ex As Exception
            MessageBox.Show("Koneksi Error : " + ex.Message)
        End Try

        refreshCombo()

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Connect()
        If (Val(tTotal.Text) > 0) Then
             Try
                Dim dt As New DataTable
                Dim query = "select * from tb_penjualan where noFaktur='" & tNoFaktur.Text & "'"
                reader = New OleDbDataAdapter(query, koneksi)
                reader.Fill(dt)

                If dt.Rows.Count = 0 Then
                    command = New OleDbCommand("INSERT INTO tb_penjualan(noFaktur,kodeBarang,QTY,total)values('" & tNoFaktur.Text & "','" & tKodeBarang.Text & "','" & tQty.Text & "','" & tTotal.Text & "')", koneksi)
                    Dim hasil As Integer = command.ExecuteNonQuery
                    If hasil > 0 Then
                        MessageBox.Show("Transaksi berhasil diproses", "Transaksi Faktur", MessageBoxButtons.OK, MessageBoxIcon.Information)
                        kosongkan()
                        refreshCombo()
                    End If
                Else
                    MessageBox.Show("Transaksi gagal diproses, no faktur sudah terdaftar", "Transaksi Faktur", MessageBoxButtons.OK, MessageBoxIcon.Error)
                End If
            Catch ex As Exception

            End Try

        End If
    End Sub

    Private Sub tKodeBarang_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tKodeBarang.KeyPress
        If Asc(e.KeyChar) = 13 Then
            Call ambilDataBarang()
        End If
    End Sub

    Sub ambilDataBarang()
        Try
            Dim dt As New DataTable
            Dim query = "select * from tb_barang where kodeBarang='" & tKodeBarang.Text & "'"
            reader = New OleDbDataAdapter(query, koneksi)
            reader.Fill(dt)

            If dt.Rows.Count > 0 Then
                tNamaBarang.Text = dt.Rows(0).Item("namaBarang").ToString
                tHargaSatuan.Text = dt.Rows(0).Item("hargaBarang").ToString
            End If
        Catch ex As Exception

        End Try

        tQty.Focus()
    End Sub

    Private Sub tQty_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles tQty.KeyUp
        tTotal.Text = Val(tQty.Text) * Val(tHargaSatuan.Text)
    End Sub

    Private Sub kosongkan()
        tNoFaktur.Text = ""
        tKodeBarang.Text = ""
        tNamaBarang.Text = ""
        tHargaSatuan.Text = ""
        tQty.Text = ""
        tTotal.Text = ""
        tNoFaktur.Focus()
    End Sub

    Private Sub refreshCombo()
        Try
            Dim dt As New DataTable
            Dim query = "select * from tb_penjualan"
            reader = New OleDbDataAdapter(query, koneksi)
            reader.Fill(dt)

            comboNoFaktur.Items.Clear()
            If dt.Rows.Count > 0 Then
                For i = 0 To dt.Rows.Count
                    comboNoFaktur.Items.Add(dt.Rows(i).Item("noFaktur").ToString)
                Next
            End If
        Catch ex As Exception

        End Try
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Try
            Dim dt As New DataTable
            Dim query = "select * from qw_penjualan where noFaktur='" & comboNoFaktur.Text & "'"
            reader = New OleDbDataAdapter(query, koneksi)
            reader.Fill(dt)

            If dt.Rows.Count > 0 Then
                ' MsgBox(dt.Rows(0).Item("noFaktur").ToString)
                Dim myWordApp As New word.Application
                Dim myWordDoc As New word.Document
                Dim hasil As New Integer
                myWordDoc = myWordApp.Documents.Open("E:\02. PERPUSTAKAAN\Kuliah\Semester 5\Visual Programming\aplikasiPenjualanSederhanan\faktur.docx")

                myWordDoc.Bookmarks("noFaktur").Select()
                myWordApp.Selection.TypeText(dt.Rows(0).Item("noFaktur").ToString)

                myWordDoc.Bookmarks("kodeBarang").Select()
                myWordApp.Selection.TypeText(dt.Rows(0).Item("kodeBarang").ToString)

                myWordDoc.Bookmarks("namaBarang").Select()
                myWordApp.Selection.TypeText(dt.Rows(0).Item("namaBarang").ToString)


                myWordDoc.Bookmarks("hargaBarang").Select()
                myWordApp.Selection.TypeText(dt.Rows(0).Item("hargaBarang").ToString)


                myWordDoc.Bookmarks("QTY").Select()
                myWordApp.Selection.TypeText(dt.Rows(0).Item("QTY").ToString)

                myWordDoc.Bookmarks("total").Select()
                myWordApp.Selection.TypeText(dt.Rows(0).Item("total").ToString)

                myWordApp.Visible = True
                myWordApp.PrintPreview = True
                myWordDoc.SaveAs2("E:\02. PERPUSTAKAAN\Kuliah\Semester 5\Visual Programming\aplikasiPenjualanSederhanan\" & tNoFaktur.Text & ".docx")
                'myWordApp.Quit()
            End If
        Catch ex As Exception

        End Try
    End Sub
End Class

Screenshot Aplikasi:
Gambar Ketika Transaksi







Sunday, December 22, 2013

Posted by Unknown 6:03 PM in
1 comment
Apa kabar?
Ok, luarbiasa...

Postingan kali ini, saya coba mempublish program sederhana untuk mendata pegawai baru yang akan masuk di sebuah perusahaan.

Berikut adalah tampilan/screenshoot program nya:


Dan berikut adalah source code programnya:

Imports System.Data.OleDb 'untuk koneksi ke database menggunakan OLDB
Imports excel = Microsoft.Office.Interop.Excel 'librarry ms office untuk bisa export ke MsExcel
Imports word = Microsoft.Office.Interop.Word 'librarry ms office untuk bisa export ke MsWord
Public Class formCalonPegawai
    'Dim koneksi As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\02. PERPUSTAKAAN\Kuliah\Semester 5\Visual Programming\aplikasiReqruitmentPegawai\dataPegawai.accdb")
    Private jenisKelamin As String, statusMenikah As String, statusTerima As String
    Private sedangEdit As Boolean = False
    Private Conn As OleDbConnection = Nothing
    Private cmd As OleDbCommand = Nothing
    Private sql As String = Nothing
    Private reader As OleDbDataReader = Nothing
    Private da As OleDbDataAdapter = Nothing
    Function Connect()
        If Not Conn Is Nothing Then
            Conn.Close()
        End If
        Conn.Open()
        Return Conn
    End Function
    Function Closedd()
        Conn.Close()
        Return Conn
    End Function

    Sub Tampil()
        Dim baris As Integer
        Connect()

        Try
            Dim dt As New DataTable
            da = New OleDbDataAdapter("select * from tbl_pegawai", Conn)
            da.Fill(dt)
            Dim alamat As String
            ListView1.Items.Clear()
            For baris = 0 To dt.Rows.Count - 1
                alamat = "Jalan:" & dt.Rows(baris).Item("jalan").ToString & " RT/RW:" & dt.Rows(baris).Item("rt").ToString & "/" & dt.Rows(baris).Item("rw").ToString
                Dim itemListView As New ListViewItem
                itemListView.Text = dt.Rows(baris).Item("noKtp").ToString
                itemListView.SubItems.Add(dt.Rows(baris).Item("nama").ToString)
                itemListView.SubItems.Add(dt.Rows(baris).Item("tempatLahir").ToString)
                itemListView.SubItems.Add(dt.Rows(baris).Item("tanggalLahir").ToString)
                itemListView.SubItems.Add(dt.Rows(baris).Item("jenisKelamin").ToString)
                itemListView.SubItems.Add(alamat)
                itemListView.SubItems.Add(dt.Rows(baris).Item("agama").ToString)
                itemListView.SubItems.Add(dt.Rows(baris).Item("statusNikah").ToString)
                itemListView.SubItems.Add(dt.Rows(baris).Item("statusTerima").ToString)
                ListView1.Items.Add(itemListView)
            Next

        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try

        Closedd()
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If Not Conn Is Nothing Then Conn.Close()

        Dim ConnString As String

        ConnString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=E:\02. PERPUSTAKAAN\Kuliah\Semester 5\Visual Programming\aplikasiReqruitmentPegawai\dataPegawai.accdb"
        Try
            Conn = New OleDbConnection(ConnString)
            Conn.Open()
            Me.Text = "Data Penerimaan Calon Pegawai"
            Tampil()
            Conn.Close()
        Catch ex As Exception
            MessageBox.Show("Koneksi Error : " + ex.Message)
        End Try

        ListView1.Columns.Add("No. KTP")
        ListView1.Columns.Add("Nama")
        ListView1.Columns.Add("Tempat Lahir")
        ListView1.Columns.Add("Tanggal Lahir")
        ListView1.Columns.Add("Jenis Kelamin")
        ListView1.Columns.Add("Alamat")
        ListView1.Columns.Add("Agama")
        ListView1.Columns.Add("Status Nikah")
        ListView1.Columns.Add("Status")
        ListView1.View = View.Details
        ListView1.FullRowSelect = True

        cAgama.Items.Add("Islam")
        cAgama.Items.Add("Protestan")
        cAgama.Items.Add("Katholik")
        cAgama.Items.Add("Hindu")
        cAgama.Items.Add("Budha")
        cAgama.Items.Add("Konghucu")
    End Sub

    Private Sub RadioButton4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        statusTerima = "1"
    End Sub

    Private Sub bSimpan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bSimpan.Click
        Connect()
        Dim insertquery As String
        Dim Hasil As Integer
        Dim cmd As OleDbCommand

        If sedangEdit = False Then
            insertquery = ("insert into tbl_pegawai(noKtp, nama, tempatLahir, tanggalLahir, jenisKelamin, jalan, rt, rw, desa, kec, kabKota, agama, statusNikah, statusTerima)Values('" & tNoKTP.Text & "','" & tNama.Text & "','" & tTempatLahir.Text & "','" & tTanggalLahir.Text & "','" & jenisKelamin & "','" & tJalan.Text & "','" & tRT.Text & "','" & tRW.Text & "','" & tDesa.Text & "','" & tKec.Text & "','" & tKab.Text & "','" & cAgama.Text & "','" & statusMenikah & "','" & statusTerima & "')")
        Else
            insertquery = "UPDATE tbl_pegawai set nama='" & tNama.Text & "', tempatLahir='" & tTempatLahir.Text & "', tanggalLahir='" & tTanggalLahir.Value & "', jenisKelamin='" & jenisKelamin & "', jalan='" & tJalan.Text & "', rt='" & tRT.Text & "', rw='" & tRW.Text & "', desa='" & tDesa.Text & "', kec='" & tKec.Text & "', kabKota='" & tKab.Text & "', agama='" & cAgama.Text & "', statusNikah='" & statusMenikah & "', statusTerima='" & statusTerima & "' where noKtp='" & tNoKTP.Text & "'"
        End If

        Try
            cmd = New OleDbCommand(insertquery, Conn)
            Hasil = cmd.ExecuteNonQuery
            If Hasil > 0 Then
                MessageBox.Show("Record Berhasil Dimasukan", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
                Tampil()

            End If
        Catch ex As OleDbException
            MessageBox.Show("Failed : " & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try

        bEdit.Enabled = True
        bHapus.Enabled = True
        sedangEdit = False
        tNoKTP.Enabled = True
        kosong()
        Closedd()
    End Sub
    Private Sub bEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bEdit.Click
        Dim baris As Integer
        For baris = 0 To ListView1.Items.Count - 1
            If ListView1.Items(baris).Selected = True Then
                Dim dt As New DataTable
                da = New OleDbDataAdapter("select * from tbl_pegawai where noKtp='" & ListView1.Items(baris).Text & "'", Conn)
                da.Fill(dt)

                tNoKTP.Text = dt.Rows(0).Item("noKtp").ToString
                tNama.Text = dt.Rows(0).Item("nama").ToString
                tTempatLahir.Text = dt.Rows(0).Item("tempatLahir").ToString
                tTanggalLahir.Value = dt.Rows(0).Item("tanggalLahir").ToString
                If dt.Rows(0).Item("jenisKelamin").ToString = "Laki-laki" Then
                    opLaki.Checked = True
                Else
                    opPerempuan.Checked = True
                End If

                tJalan.Text = dt.Rows(0).Item("jalan").ToString
                tRT.Text = dt.Rows(0).Item("rt").ToString
                tRW.Text = dt.Rows(0).Item("rw").ToString
                tDesa.Text = dt.Rows(0).Item("desa").ToString
                tKec.Text = dt.Rows(0).Item("kec").ToString
                tKab.Text = dt.Rows(0).Item("kabkota").ToString
                cAgama.Text = dt.Rows(0).Item("agama").ToString

                If dt.Rows(0).Item("statusNikah").ToString = "1" Then
                    opSudahMenikah.Checked = True
                Else
                    opBelumMenikah.Checked = True
                End If

                If dt.Rows(0).Item("statusTerima").ToString = "1" Then
                    opDiterima.Checked = True
                ElseIf dt.Rows(0).Item("statusTerima").ToString = "2" Then
                    opPending.Checked = True
                ElseIf dt.Rows(0).Item("statusTerima").ToString = "3" Then
                    opDitolak.Checked = True
                End If

                sedangEdit = True
                bEdit.Enabled = False
                bHapus.Enabled = False
                tNoKTP.Enabled = False
            End If
        Next
    End Sub

    Private Sub opLaki_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opLaki.CheckedChanged
        jenisKelamin = "Laki-laki"
    End Sub

    Private Sub opPerempuan_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opPerempuan.CheckedChanged
        jenisKelamin = "Perempuan"
    End Sub

    Private Sub opSudahMenikah_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opSudahMenikah.CheckedChanged
        statusMenikah = "1"
    End Sub

    Private Sub opBelumMenikah_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opBelumMenikah.CheckedChanged
        statusMenikah = "0"
    End Sub

    Sub kosong()
        tNoKTP.Text = ""
        tNama.Text = ""
        tTempatLahir.Text = ""
        tJalan.Text = ""
        tRT.Text = ""
        tRW.Text = ""
        tDesa.Text = ""
        tKec.Text = ""
        tKab.Text = ""
        cAgama.Text = ""
    End Sub

    Private Sub opDiterima_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opDiterima.CheckedChanged
        statusTerima = "1"
    End Sub

    Private Sub opDitolak_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opDitolak.CheckedChanged
        statusTerima = "3"
    End Sub

    Private Sub opPending_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles opPending.CheckedChanged
        statusTerima = "2"
    End Sub

    Private Sub bHapus_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bHapus.Click
        Connect()
        Dim query As String
        Dim Hasil As Integer
        Dim cmd As OleDbCommand
        For baris = 0 To ListView1.Items.Count - 1
            If ListView1.Items(baris).Selected = True Then
                query = "DELETE FROM tbl_pegawai where noKtp='" & ListView1.Items(baris).Text & "'"
                Try
                    cmd = New OleDbCommand(query, Conn)
                    Hasil = cmd.ExecuteNonQuery
                    If Hasil > 0 Then
                        MessageBox.Show("Record Berhasil dihapus", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
                        Tampil()
                    End If
                Catch ex As OleDbException
                    MessageBox.Show("Failed : " & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error)
                End Try
            End If
        Next
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        'UNTUK EXPORT KE EXCEL

        Dim excelApp = New excel.Application
        Dim excelWorkbook = excelApp.Workbooks.Open("E:\02. PERPUSTAKAAN\Kuliah\Semester 5\Visual Programming\aplikasiReqruitmentPegawai\dataPegawai.xlsx")

        Dim noRow As Integer
     
        Dim baris As Integer
        Connect()

        Try
            Dim dt As New DataTable
            da = New OleDbDataAdapter("select * from tbl_pegawai", Conn)
            da.Fill(dt)
            For baris = 0 To dt.Rows.Count - 1
                noRow = noRow + 1
                excelApp.Range("A" & (noRow + 1)).Value = noRow
                excelApp.Range("B" & (noRow + 1)).Value = dt.Rows(baris).Item("noKtp").ToString()
                excelApp.Range("C" & (noRow + 1)).Value = dt.Rows(baris).Item("nama").ToString()
                excelApp.Range("D" & (noRow + 1)).Value = dt.Rows(baris).Item("tempatLahir").ToString()
                excelApp.Range("E" & (noRow + 1)).Value = dt.Rows(baris).Item("tanggalLahir").ToString()
                excelApp.Range("F" & (noRow + 1)).Value = dt.Rows(baris).Item("jenisKelamin").ToString()
                excelApp.Range("G" & (noRow + 1)).Value = dt.Rows(baris).Item("jalan").ToString()
                excelApp.Range("H" & (noRow + 1)).Value = dt.Rows(baris).Item("rt").ToString()
                excelApp.Range("I" & (noRow + 1)).Value = dt.Rows(baris).Item("rw").ToString()
                excelApp.Range("J" & (noRow + 1)).Value = dt.Rows(baris).Item("desa").ToString()
                excelApp.Range("K" & (noRow + 1)).Value = dt.Rows(baris).Item("kec").ToString()
                excelApp.Range("L" & (noRow + 1)).Value = dt.Rows(baris).Item("kabkota").ToString()
                excelApp.Range("M" & (noRow + 1)).Value = dt.Rows(baris).Item("agama").ToString()
                excelApp.Range("N" & (noRow + 1)).Value = dt.Rows(baris).Item("statusNikah").ToString()
                excelApp.Range("O" & (noRow + 1)).Value = dt.Rows(baris).Item("statusTerima").ToString()
            Next

            excelWorkbook.Save()
            If (MessageBox.Show("Data berhasildi export, klik ok untuk membuka file", "Export", MessageBoxButtons.OKCancel) = Windows.Forms.DialogResult.OK) Then
                excelApp.Visible = True
            Else
                excelWorkbook.Close()
                excelApp.Quit()
            End If

        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
        Closedd()
    End Sub
End Class



Friday, October 18, 2013

Posted by Unknown 8:49 AM
No comments
Program ini diciptakan untuk memudahkan kita dalam mempelajari bagaimana cara mengucapkan kata-kata yang berbahasa inggris dengan baik dan benar. Kita bisa mengatur kecepatan pengucapan kata sesuai dengan yang diinginkan, serta beberapa opsi  lain yang bisa kita gunakan.

Berikut adalah screen shoot aplikasnya:


dan berikut ini source code program tersebut:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bUcapkan.Click
        Dim bicara As New SpeechLib.SpVoice
        'bicara.AudioOutputStream.Format.Type = SpeechLib.SpeechAudioFormatType.SAFT11kHz16BitStereo
        bicara.Rate = kecepatan.Value
        Dim kataKata() As String, jumlahkata As Integer, loopingKata As Integer, mulaiBlock As Integer = 0
        If rPerkata.Checked = True Then
            kataKata = tTulisan.Text.Split(" ")
            jumlahkata = kataKata.Length - 1
            tTulisan.SelectionStart = 0
            tTulisan.SelectionLength = tTulisan.Text.Length
            tTulisan.SelectionColor = bWarnaTulisan.BackColor
            For loopingKata = 0 To jumlahkata
                tTulisan.SelectionStart = mulaiBlock
                tTulisan.SelectionLength = kataKata(loopingKata).Length
                If cBlock.Checked = True Then
                    tTulisan.SelectionBackColor = bWarnaBlock.BackColor
                End If
                bicara.Speak(kataKata(loopingKata), SpeechLib.SpeechVoiceSpeakFlags.SVSFDefault)
                tTulisan.SelectionBackColor = bWarnaBackgrounText.BackColor
                If cWarnaiKata.Checked = True Then
                    tTulisan.SelectionColor = bWarnaTulisanSdhDiBaca.BackColor
                End If
                tTulisan.Refresh()
                mulaiBlock = mulaiBlock + kataKata(loopingKata).Length + 1
            Next
        Else
            bicara.Speak(tTulisan.Text, SpeechLib.SpeechVoiceSpeakFlags.SVSFDefault)
        End If
    End Sub
    Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rNormal.CheckedChanged
        cBlock.Enabled = False
        cWarnaiKata.Enabled = False
    End Sub
    Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rPerkata.CheckedChanged
        cBlock.Enabled = True
        cWarnaiKata.Enabled = True
    End Sub
    Private Sub Label2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label2.Click
    End Sub
    Private Sub bFont_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bFont.Click
        fontDialog.ShowDialog()
        tTulisan.Font = fontDialog.Font
    End Sub
    Private Sub bWarnaBackgrounText_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bWarnaBackgrounText.Click
        colorDialog.ShowDialog()
        tTulisan.BackColor = colorDialog.Color
        bWarnaBackgrounText.BackColor = colorDialog.Color
    End Sub
    Private Sub bWarnaTulisan_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bWarnaTulisan.Click
        colorDialog.ShowDialog()
        tTulisan.ForeColor = colorDialog.Color
        bWarnaTulisan.BackColor = colorDialog.Color
    End Sub
    Private Sub bWarnaBlock_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bWarnaBlock.Click
        colorDialog.ShowDialog()
        bWarnaBlock.BackColor = colorDialog.Color
    End Sub
    Private Sub bWarnaTulisanSdhDiBaca_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bWarnaTulisanSdhDiBaca.Click
        colorDialog.ShowDialog()
        bWarnaTulisanSdhDiBaca.BackColor = colorDialog.Color
    End Sub

Saturday, November 10, 2012

Posted by Unknown 12:13 AM
Sebelum saya jelaskan apa itu Pemrograman Berorientasi Objek bahasa inggris:Object Oriented Programming (OOP). Saya coba jelaskan terlebih dahulu mengenai Arsitektur Perangkat Lunak (Software).


Apa itu arsitektur perangkat lunak, seberapa pentingkah hal tersebut?, mari kita bahas bersama-sama.

1. Arsitektur Perangkat Lunak (Software).

1. 1. Pengertian Arsitektur Perangkat Lunak.

Arsitektur perangkat lunak didefinisikan sebagai aturan, ilmu pengetahuan dan pola yang mengatur :
  • Membagi masalah dan sistem yang akan dibangun menjadi potongan-potongan/bagian-bagian tertentu
  • Teknik yang digunakan untuk membuat antarmuka antara potongan-potongan
  • Teknik yang digunakan untuk mengelola struktur keseluruhan dan aliran
  • Teknik yang digunakan untuk antarmuka sistem dengan lingkungannya
  • Sesuai penggunaan pendekatan pengembangan dan pengiriman, teknik dan alat.

1.2. Mengapa Arsitektur penting?

OOP.jpg
Tujuan utama dari arsitektur perangkat lunak adalah untuk menentukan kebutuhan non-fungsional dari sistem dan menentukan lingkungan. Desain rinci diikuti oleh definisi cara menyampaikan perilaku fungsional dalam aturan arsitektur. Arsitektur ini penting karena:
  • Kontrol kompleksitas
  • Menegakkan praktik terbaik
  • Memberikan konsistensi dan keseragaman
  • Meningkatkan prediktabilitas
  • Memungkinkan penggunaan kembali.

2. Pemrograman Berorientasi Objek


Pemrograman berorientasi objek merupakan pemrograman yang menjadikan objek sebagai komponen utama dalam sistem. Objek merupakan gabungan dari data(attribute)/variable dan behavior(method)/fungsi, dimana sebuah objek dibuat dari sebuah class.

2. 1. Objek

Objek merupakan hasil dari sebuah class, jika diibaratkan object adalah kue, maka kelas adalah cetakan kuenya, dimana kue dibuat menggunakan cetakan tersebut. Dan sebuah cetakan kue dapat membuat beberapa kue, artinya sebuah kelas dapat membuat beberapa objek.

Untuk membuat objek dalam java diperlukan perintah new, dimana cara pembuatannya sama dengan pembuatan variable.

Membuat Objek
Manusia maulana = new Manusia();
Manusia merupakan class, dan maulana merupakan object dari Manusia 

Jika dalam kelas yang dibuat objek tersebut terdapat atribut, maka dapat dipanggil menggunakan . (titik).

maulana.tinggi = 172;

memanggil atribut tinggi pada objek maulana dan mengubah nilainya

Jika dalam kelas tersebut memiliki sebuah fungsi (metode), maka dapat dipanggil menggunakan . (titik) dan diakhiri dengan ()

memanggil fungsi
maulana.berjalan();

2. 2. Class


Class itu merupakan blue print dari object, jadi class itu yang menghasilkan object. Seperti contoh sebelumnya, class itu seperti cetakan kue. cetakan kue bisa menghasilkan satu kue atau lebih. begitu juga class, bisa menghasilkan satu object atau lebih dengan Atribut dan Method yang sama tapi dengan nilai yang berbeda di setiap Objeknya.

Perhatikan contoh berikut.

Manusia.java
manusiaBeraksi.java
Contoh di atas, membuktikan bahwa satu class bisa menghasilkan beberapa objek, dari contoh diatas kelas Manusia bisa menghasilkan 2 objek. Yaitu maulana dan yusuf.


Tips membuat class.
  1. Satu file bisa berisi lebih dari satu class, tapi agar lebih mudah dipahami lebih baik satu file berisi 1 class
  1. Satu file hanya dapat berisi 1 public class, nama public class harus sama dengan nama file
  1. Java menganut case-sensitif

2.3. Method

Ada dua method yaitu fungsi dan prosedure, apa bedanya? secara fungsi mungkin hampir sama. Hanya cara mengerjakannya saja yang beda. Mari kita lihat contoh dibawah ini :


Dari contoh di atas, ada dua method. beriTauNama() dan ambilTinggi(). ambilTinggi() merupakan fungsi/function karena mengembalikan nilai sedangkan beriTauNama() merupakan prosedur karena tidak mengembalikan nilai. Saat membuat fungsi harus ada nilai yang dikembalikan, untuk mengembalikan nilainya menggunakan kata kunci return. Berikut adalah contoh cara mengambil nilai dari fungsi :

Method adalah implementasi dari bagaimana bekerjanya sebuah class.
Yang dilakukan method adalah:
  1. Manipulasi data
  2. Operasi Aritmatik
  3. Memonitor kejadian dari sebuah event

2.4. Parameter

Parameter itu, variable atau atribut yang digunakan sebuah method(prosedur/fungsi) untuk melakukan proses sesuai dengan kebutuhan fungsi tersebut. Banyaknya parameter dalam suatu fungsi tergantung kebutuhan, tapi suatu fungsi tidak wajib memiliki parameter.

dari contoh diatas, variable goldar merupakan parameter dari prosedur gantiGolonganDarah(). Jika dibutuhkan lebih dari satu parameter dalam sebuah fungsi, tinggal dipisahkan menggunakan , (koma). Contoh:

void gantiUmurdanGoldah(int umurnya=0, String goldah){
--
}

2. 5. Kata kunci this

Perhatikan gambar disamping:
perhatikan baris kode no 13 dan baris kode no 32 sampai 34. Di sana terdapat nama atribut/avariable yang sama yaitu tempatLahir. Sekarang lihat baris kode no 33, di sana tertulis this.tempatLahir = tempatLahir. Mana yang merupakan parameter dan yang merupakan variableya, benar. tempatLahir merupakan variable yang ada di class Manusia, sedangkan tempatLahir merupakan parameter. Jadi?, ya benar. Saya sudah paham.







2. 6. Konstruktor

Method yang digunakan untuk menentukan nilai awal saat objek pertama kali dibuat, dipanggil secara otomatis ketika new digunakan untuk membuat instan class.
Sifat konstruktor adalah :
  • Nama konstruktor sama dengan nama class
  • Tidak memiliki nilai balik dan tidak boleh ada kata kunci void.
Masih ingat pembahasan bab Objek?, yang ini:

Membuat Objek
Manusia maulana = new Manusia();
Manusia merupakan class, dan maulana merupakan object dari Manusia

Manusia()-> Adalah konstruktor dari class Maulana. Di java, jika kita tidak membuat konstruktor. Maka, java secara otomatis akan membuatkan kontruktor untuk class public yang kita buat. Bingung?, perhatikan contoh dibawah ini.

Pada gambar di samping, class Manusia tidak memilki konstruktor. Kenapa?, karena konstruktor itu method yang namanya sama dengan nama class. Jika kondisinya seperti ini, maka java secara otomatis akan membuatkan kontruktor untuk class yang kita buat. Seperti itu...., ok?, bagus. Kita lanjutkan, ke contoh berikutnya.




gambar di atas menunjukan bahwa class Manusia memiliki Konstruktor dengan parameter namaOrangTua dan tempatLahir. Sehingga, ketika kita akan menggunakan class Manusia ini, kita harus menentukan nilai awal pada masing-masing variable yang menjadi parameter konstruktor tersebut. Dalam hal ini adalah namaOrangTua dan tempatLahir. Contoh pemanggilannya adalah sebagai berikut :

perhatikan baris kode no 13, itu adalah contoh membuat objek maulana dari class Manusia yang konstruktornya memiliki parameter. Konstruktor pada suatu class bisa lebih dari satu, asal parameternya beda, maksudnya seperti ini. Lihat gambar di bawah:
Pada gambar diatas, class Manusia memiliki 2 konstruktor yang pertama adalah dari baris kode 20 sampai 22, dan yang ke 2 adalah dari baris 24 samapi 27. Ketika kita membuat objek dari kelas Manusia, semua konstruktor bisa dipanggil sesuai dengan pola masing-masing atau hanya salah satu.

2. 7. Visibilitas Pada Java



Perhatikan Contoh berikut:

Perhatikan, di class Manusia2 variable nama merupakan variable private, sehingga ketika class manusiaBeraksi mengakses variable nama yang ada di class Manusia2 maka terjadi error. Begitupun dengan visibilitas yang lainnya, berlaku sesuai dengan keterangan yang ada.

2. 8. Overloading

Overloading bisa terjadi pada konstruktor dan method, berikut contoh overloading:
Over loading pada kontruktor:

Overloading pada method:
Jadi, overoading itu apa?. Ya benar, overloading adalah pembuatan lebih dari 1 method atau konstruktor dengan nama yang sama. Tapi, yang harus dibedakan adalah jumlah prameternya atau type data parameternya.

2. 9. Pewarisan(inheritance)

Pewarisan adalah mekasnisme,dimana sebuah kelas bisa mewarisi seluruh atribut dan method dari class lain sesuai dengan ketentuan yang berlaku. Perhatikan contoh dibawah ini :
Class Handphone
Class smartPhone
Class Iphone










Dari contoh diatas, ada tiga class yaitu Handphone, smartPhone dan iPhone. Di class iPhone, saya membuat objek handPhoneSaya dari class smartPhone, kemudian memanggil method menelpon, padahal method menelpon tersebut tidak ada di class smartPhone, adanya di class Handphone. Tapi kenapa bisa dipanggil melalui class smartPhone?, ya benar. Karena class Handphone sudah diturunkan ke class smartPhone sehingga class smartPhone bisa menggunakan semua yang ada di class Handphone yaitu denganmenggunakan kata kunci extends. Di java, pewarisan tidak bisa lebih dari satu class.

Dalam pewarisan biasanya visibilitas protected digunakan. Di pewarisan juga ada namanya Overriding, apa itu overriding?, mari kita lihat contoh berikut ini :
Ketika kita panggil method menelpon di class iPhone, maka yang akan dikerjakan adalah method menelpon yang ada di class smartPhone, bukan yang di class Handphone. Itulah, overrid.....




Search

Our Sponsors