Saturday, May 26, 2012

Merubah Caption dan Ukuran Sebuah Form - VB6

Apa yang dimaksud dengan property .Caption? secara definisi yang mudah dipahami, property .Caption pada sebuah Form adalah tulisan yang terdapat pada sisi bagian kiri. Definisi tersebut berlaku bagi Anda orang Amerika, Indonesia dan sebagainya. Sedangkan jika Anda orang Arab atau Mesir maka Caption pada Form adalah tulisan yang berada pada sisi kanan bagian atas. Secara default pada saat kita menambahkan sebuah Form maka pada Form tersebut Captionnya akan bertuliskan Form1, kemudian kita tambah lagi Formnya maka akan bertuliskan Form2 dan seterusnya.

Apa yang dimaksud ukuran dalam sebuah form pada judul di atas? yang dimaksud dengan ukuran pada sebuah form adalah property .Height dan property .Weight. Nah, pada posting kali ini saya akan mendemokan bagaimana cara merubah property .Caption, property .Height, dan property .Weight secara bersamaan menggunakan kode. Adapun kodenya adalah sebagai berikut:
Option Explicit 

Private Sub
Command1_Click()
Form1.Caption = "Test" 'rubah property .Caption menjadi Test asalnya Form1
Form1.Width = 2500 'ganti nilai pada property .Width menjadi 2500
Form1.Height = 3000 'ganti nilai pada property .Height menjadi 3000
End Sub
Demikianlah cara merubah property .Caption, property .Height, dan property .Width secara bersamaan menggunakan kode bahasa pemrograman Visual Basic 6.0
READ MORE - Merubah Caption dan Ukuran Sebuah Form - VB6

Merubah Nilai (Property .Value) CheckBox Menggunakan Kode - VB6

Setelah memposting cara menukar Caption CommandButton, sekarang kita beralih object pada object CheckBox. Perlu diketahui bahwa property .Value yang terdapat pada object CheckBox nilainya bisa kira rubah secara pemrograman (melalui kode). Bagaimanakah cara merubah property .Value pada object CheckBox dari bernilai 0 menjadi bernilai 1 atau dari bernilai 1 menjadi bernilai 0 melalui Code VB6.0.

Berikut merupakan source code untuk merubah property .Value yang terdapat pada CheckBox menggunakan kode bahasa pemrograman Visual Basic 6.0.
Option Explicit 
 
Private Sub Command1_Click() 
    Check1.Value = 1 'menjadi bernilai 1 (tercentang) 
End Sub   
Sederhana sekali bukan? nah, demikianlah cara merubah property .Value yang terdapat pada object CheckBox menggunakan kode bahasa pemrograman Visual Basic 6.0. Semoga bermanfaat.
READ MORE - Merubah Nilai (Property .Value) CheckBox Menggunakan Kode - VB6

Friday, December 30, 2011

Get GetKeyboardLayout language from a thread

Option Explicit  
'Get GetKeyboardLayout language from a thread
'Original code by Gringo Man
Private Declare Function GetKeyboardLayout Lib "user32" (ByVal dwLayout As Long) As Long
Private Declare Function
GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long

Public Sub
KeyBoardLanguage()

Dim
TheardId As Long
Dim
TheardLang As Long
Dim
processid As Long

TheardId = GetWindowThreadProcessId(hwnd, processid)
TheardLang = GetKeyboardLayout(ByVal TheardId)
TheardLang = TheardLang Mod 10000

If
TheardLang = "9721" Then
MsgBox "English"
ElseIf
TheardLang = "5425" Then
MsgBox "Arabic"
End If

End Sub

Private Sub
Command1_Click()
KeyBoardLanguage
End Sub
READ MORE - Get GetKeyboardLayout language from a thread

Saturday, December 24, 2011

Visual Basic 6.0 - Beberapa Masalah File Manifest

Penggunaan file manifest untuk meng- Style XP-kan objek-objek Visual Basic 6.0 ternyata memiliki bebearapa masalah, diantaranya:
  1. Hilangnya shortcut mnemonic (shortcut underlin/underscore) yang biasa diakses melalui Alt + ...
  2. OptionButton dan CheckBox yang disimpan dalam kontainer Frame berubah berwarna hitam mengakibatkan Caption dari dua objek tersebut tidak dapat terbaca.
  3. CommandButton yang property style-nya diset pada mode 1-Graphical tidak mau berubah menjadi Style XP.
  4. MSCOMCTL.OCX TreeView, ToolBar, dsb tidak mau berubah menjadi Style XP.
Penyelesaian:
  • Masalah ke-1: Simpan kode di bawah ini pada module, selanjutnya panggil pada setiap Event Form Load.
    Option Explicit 

    Private Const
    WM_CHANGEUISTATE As Long = &H127
    Private Const UISF_HIDEFOCUS As Integer = &H1
    Private Const UISF_HIDEACCEL As Integer = &H2
    Private Const UIS_CLEAR As Integer = &H2

    Private Declare Function
    SendMessage Lib "user32" Alias "SendMessageA" _
    ByVal hwnd As Long, _
    ByVal wMsg As Long, _
    ByVal wParam As Long, _
    lParam As Any) As Long

    Public Sub
    ShowMnemonic(frm As Form)
    Dim uiState As Long
    uiState = MakeLong(UIS_CLEAR, UISF_HIDEFOCUS Or UISF_HIDEACCEL)
    SendMessage frm.hwnd, WM_CHANGEUISTATE, uiState, ByVal 0
    End Sub

    Private Function
    MakeLong(ByVal wLow As Integer, ByVal wHigh As Integer) As Long
    MakeLong = wHigh * &H10000 + wLow
    End Function
  • Masalah ke-2: Jangan tempatkan OptionButton dan CheckBox secara langsung di atas Frame, tetapi simpanlah kedua objek tersebut di atas PictureBox, selanjutnya pindahkan PictureBox ini ke dalam Frame.
  • Masalah ke-3: Mengenai permasalah ini Anda dapat mengunjugi situs Edanmo (Eduardo A. Morcillo).
  • Masalah ke-4: Sudah diselesaikan disini.
READ MORE - Visual Basic 6.0 - Beberapa Masalah File Manifest