PEMROGRAMAN API - PERTEMUAN 3 -. API parameter types  Terdapat parameter yang asing seperti VOID, LPCSTR or DWORD.  Bila anda familiar dengan C, maka.

Slides:



Advertisements
Presentasi serupa
Pemrograman Berorientasi Objek
Advertisements

Pemrograman Terstruktur
Rully Yulian MF MCAD,MCPD,MCT,MVP VB.NET Independent IT Trainer - Application Developer
FUNGSI Deklarasi dan Definisi fungsi Void dan Non-void Fungsi main.
STRUKTUR DATA (5) Pointer dan Function
Copyright by : M. YAHYA, S.Kom PERTEMUAN KE - I. 1. Judul Program 2. Blok Program a. Bagian Deklarasi - Deklarasi Tabel - Definisi Konstanta - Definisi.
Struktur Dasar PHP.
Pengembangan Program Ada beberapa definisi singkat yang perlu dipahami dalam mengembangkan suatu program dengan VB, diantaranya adalah: Control, adalah.
Pointer dan Reference (Bab 6).
Pengaksesan Port Parallel Dengan VB
Java array.
Subprogram Minggu V – VI
Method.
Pemrograman JAVA (TIB09)
PROCEDURE DAN FUNCTION
Review-Dasar Pemrograman Komputer
STRUKTUR DATA (5) Pointer dan Function
Alokasi Memori Yuliana Setiowati.
Pemrograman Internet (modul 2)
-PERTEMUAN KEDUA-. Messages  Adalah cara dari Windows memberitahu program anda bahwa terjadi sesuatu inputan dan anda harus memprosesnya  Messages dari.
PROSEDUR.
LOOPING dan array Tinaliah, S. Kom.
STRUKTUR DATA Pointer dan Function
Method, Array dan String
Dasar-dasar Visual Basic
Pemrograman Berorientasi Obyek1 Sub Pokok Bahasan Pointer. Reference. Function Passing Parameter by Value, by Reference, by Pointer.
FUNCTIONS Pertemuan 9 Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007.
Rahmat D. R. Dako, ST, M.Eng.  Modul  void main (void)  Modul  fungsi = function  Keuntungan penggunaan Fungsi atau modul :  Program menjadi lebih.
1 Pertemuan 04 Variable Matakuliah: T0063/Pemrograman Visual Tahun: 2005 Versi: 1/0.
Teknik Pemrog. Terstruktur 2
Tenia Wahyuningrum pointers Tenia Wahyuningrum
1 Pertemuan 05 Procedure dan Parameter Matakuliah: T0063/Pemrograman Visual Tahun: 2005 Versi: 1/0.
Pertemuan 13 Application Programming Interface (API)
Fungsi, Array dan String
Rully Yulian MF MCAD,MCPD,MCT,MVP VB.NET Independent IT Trainer - Application Developer
Data & Variabel Visual basic 6.0.
Variabel, Konstanta, tipe data dan Operator
KELAS GENERIK.
PROCEDURE AND FUNCTION
Pertemuan 3 Variabel & Konstanta.
FUNGSI.
Pemrograman Terstruktur
PENGGUNAAN TIPE DATA YANG EFEKTIF
Tipe Data By Serdiwansyah N. A..
Matakuliah : H0112 – Pemrograman Bahasa Tingkat Tinggi
PERTEMUAN 3 KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
Algoritma & Pemrograman II
KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
Pointer TEE 2103 Algoritma dan Pemrograman Dosen: Abdillah, MIT
Variabel, Konstanta, tipe data dan Operator
PENGGUNAAN DATA DAN VARIABEL
PERTEMUAN 2 MACRO EXCEL.
Prosedur.
Pemrograman VB.NET Pertemuan 2 Sorang Pakpahan,S.Kom.,M.Kom.
BAB IV – ARRAY DINAMIS DAN LINKED LIST (1)
Defri Kurniawan, M.Kom STRUKTUR DATA Defri Kurniawan, M.Kom
PENGGUNAAN TIPE DATA YANG EFEKTIF
BAB I – PENGENALAN STRUKTUR DATA
Pemrograman VB.NET Pertemuan 6 Sorang Pakpahan,S.Kom.,M.Kom.
As’ad Djamalilleil Function (Fungsi) As’ad Djamalilleil
PENGGUNAAN TIPE DATA YANG EFEKTIF
KONSEP TIPE DATA, OPERATOR DAN IDENTIFIER
FUNGSI II.
Algoritme dan Pemrograman
Pertemuan 13 Application Programming Interface (API)
PEMROGRAMAN SISTEM.
PENGGUNAAN TIPE DATA YANG EFEKTIF
ALGORITMA & PEMROGRAMAN 2B
Pointer.
Defri Kurniawan POINTER Defri Kurniawan
Transcript presentasi:

PEMROGRAMAN API - PERTEMUAN 3 -

API parameter types  Terdapat parameter yang asing seperti VOID, LPCSTR or DWORD.  Bila anda familiar dengan C, maka anda mustinya sudah mengetahui tipe tersebut

API parameter types  Contoh lain adalah HWND, HDC, HMENU  Kesemuanya diawali dengan huruf “H”, yang artinya adalah handle untuk tipe object yang berbeda

API parameter types  Misalnya HBITMAP adalah handle untuk BITMAP, HBRUSH adalah handle untuk BRUSH, dan lain-lain  Semuanya dikonversikan ke Long dan harus dipassingkan secara ByVal

API parameter types  Beberapa Type diawali dengan LP. Merupakan singkatan dari Long Pointer.  Jadi LPWORD sebenarnya adalah alokasi memori dimana data disimpan  Ketika anda memassing argumen dengan menggunakan ByRef (default), maka anda sebenarnya memassing alamat

API parameter types  Ingat, bila parameter type anda diawali dengan LP, maka anda harus memassingnya secara ByRef.  Tapi LPARAM adalah sama seperti Lparam, bukan LParam. Artinya dia bukan pointer. Anda harus memassingnya secara ByVal

API parameter types  Untuk type NULL. Biasanya dipassing sebagai ByVal 0& atau sebagai vbNullString.  Untuk type VOID. Ingatlah deklarasi haruslah berbentuk Sub.

Any  Beberapa messages mengandung parameter yang dideklarasikan sebagai Any.  Artinya parameter bisa bervariasi  Anda bisa memassing integer, string, user defined types, ataupun yang lainnya  Berikut ini adalah contoh function ( SendMessage ) yang mengandung parameter bertype Any

Any  Public Declare Function SendMessage Lib "User32" Alias "SendMessageA" ( ByVal Hwnd as Long, ByVal wMsg as Long, ByVal wParam as Long, lParam as Any ) as Long

Any  lParam dideklarasikan ByRef (default) sebagai Any.  Aturan yang harus diikuti bila memassing type berbeda kepada lParam. Numeric  ByVal (As Long, or As Any ) Null  ByVal (As Long, or As Any ) String  ByRef (As String, or As Any ) Type  ByRef (As Any ) array  of Type ByRef (As Any )

Any CONTOH: Call SendMessage (Me.Hwnd, WM_XXXX, 0&, ByVal LongValue )

Any  Tiga parameter pertama adalah standar. Karena dideklarasikan secara ByVal.  Parameter keempat ( LongValue ) jika dibiarkan, maka akan dilakukan secara ByRef. Sebab VB tidak mengenali parameter apa yang akan dipassing  Oleh karena itu, harus ditulis secara eksplisit ByVal di depannya

Any  Lebih mudah bila kita membuat beberapa versi dari satu fungsi yang sama.  Penting untuk pemanggilan yang berbeda

Any  Public Declare Function SendMessageLng Lib "User32" Alias "SendMessageA" (ByVal Hwnd as Long, ByVal wMsg as Long, ByVal wParam as Long, ByVal lParam as Long ) as Long

Any  Public Declare Function SendMessageStr Lib "User32" Alias "SendMessageA" (ByVal Hwnd as Long, ByVal wMsg as Long, ByVal wParam as Long, lParam as String ) as Long

Any  Perhatikan bahwa tipe parameter tidak mengubah API.  Parameter keempat adalah selalu 4-byte.  Ketika kita memassing nilai Long atau Null ByVal, 4-byte value akan dipassing secara langsung ke function.

Any  Namun apabila yang dipassing adalah String atau yang lainnya, maka yang terjadi adalah ByRef  sehingga VB sebenarnya memassing alamat dari variabel tersebut, yaitu nilai 4-byte value.

- QUESTION ? -