Simpan BITCOIN mu untuk masa depan. Ayo menambang dan GRATIS.

B4A - Membuat Kamera sederhana


Libraries : ACL (AdvancedCamera)

1. Buatlah satu Layout dengan nama Main
2. Dalam layout, tambahkan 1 Panel, 4 Label dan 2 Button
3. Sekarang, ketik atau Copas kode berikut ini

Sub Globals
    Private camera1 As AdvancedCamera
    Private Panel1 As Panel
Private LblTgl As Label
Private LblJam As Label
Private ZoomOut As Button
Private ZoomIn As Button
Private LblZoom As Label
End Sub

Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("Menu")
Activity.AddMenuItem("Adegan","mnuAdegan")
    Activity.AddMenuItem("Efek","mnuEfek")
Activity.AddMenuItem("Zoom", "mnuZoom")
Activity.AddMenuItem("Foto", "mnuFoto")

LblTgl.Text = DateTime.Date(DateTime.Now)
LblJam.Text = DateTime.Time(DateTime.Now)

ZoomIn.Visible = False
ZoomOut.Visible = False
LblZoom.Visible = False
End Sub

Sub Activity_Resume
    camera1.Initialize(Panel1, "Camera1")
End Sub

Sub Activity_Pause (UserClosed As Boolean)
    camera1.StopPreview
    camera1.Release
End Sub

Sub mnuEfek_Click
Dim List As List

List.Initialize
List.AddAll(Array As String("Normal","Abu-abu","Negatif","Sepia"))

Dim Selected As Int
Selected = InputList(List, "Efek", -1)

If Selected = 0 Then
camera1.ColourEffect = "NONE"
Else if Selected = 1 Then
camera1.ColourEffect = "MONO"
Else if Selected = 2 Then
camera1.ColourEffect = "NEGATIVE"
Else if Selected = 3 Then
camera1.ColourEffect = "SEPIA"
Else
Return
End If
End Sub

Sub mnuAdegan_Click
Dim List As List

List.Initialize
List.AddAll(Array As String("Otomatis","Malam","Pemandangan","Orang","Senja"))

Dim Selected As Int
Selected = InputList(List, "Adegan", -1)

If Selected = 0 Then
camera1.SceneMode = "AUTO"
Else if Selected = 1 Then
camera1.SceneMode = "NIGHT"
Else if Selected = 2 Then
camera1.SceneMode = "LANDSCAPE"
Else if Selected = 3 Then
camera1.SceneMode = "PORTRAIT"
Else if Selected = 4 Then
camera1.SceneMode = "SUNSET"
Else
Return
End If
End Sub

Sub Panel1_Click
ZoomIn.SetVisibleAnimated(250, False)
ZoomOut.SetVisibleAnimated(250, False)
LblZoom.SetVisibleAnimated(250, False)
End Sub

Sub mnuZoom_click
ZoomIn.SetVisibleAnimated(250, True)
ZoomOut.SetVisibleAnimated(250, True)
LblZoom.SetVisibleAnimated(250, True)
End Sub

Sub ZoomIn_Click
camera1.setZoomIn
End Sub

Sub ZoomOut_Click
camera1.setZoomOut
End Sub

Sub mnuFoto_Click
camera1.TakePicture
End Sub

Sub Camera1_Ready (Success As Boolean)
    If Success Then
        camera1.StartPreview    
    Else
        ToastMessageShow("Tidak dapat terhubung ke Kamera.", True)
    End If
End Sub

Sub Camera1_PictureTaken (Data() As Byte)
Dim t As Long
t = DateTime.DateParse(LblTgl.Text)
DateTime.DateFormat = "ddMMyyyy"

Dim Tgl As String
Tgl = DateTime.Date(t)

Dim d As Long
d = DateTime.TimeParse(LblJam.Text)
DateTime.TimeFormat = "HHmmss"

Dim Jam As String
Jam = DateTime.Time(d)

Dim MP As MediaPlayer
MP.Initialize2("MP")
MP.Load(File.DirAssets, "camera_click.ogg")
MP.Play

    camera1.StartPreview
    Dim out As OutputStream
    out = File.OpenOutput("sdcard/DCIM/Camera", "KameraKuJi_" & Tgl & "_" & Jam & ".jpg", False)
    out.WriteBytes(Data, 0, Data.Length)
    out.Close
    ToastMessageShow("Foto tersimpan di : " & File.Combine("sdcard/DCIM/Camera", "KameraKuJi_" & Tgl & "_" & Jam & ".jpg"), True)

LblTgl.Text = DateTime.Date(DateTime.Now)
LblJam.Text = DateTime.Time(DateTime.Now)
End Sub

4. Jalankan aplikasinya atau tekan F5 di keyboard (Jangan pakai Emulator!)
5. Berikut adalah hasilnya



2 $type={blogger}:

Sukarno mengatakan...

Mantabs nih bro..bisa dibagi Librarynya?

Admin mengatakan...

boleh'. gak donlot full library?