Tuesday, September 24, 2013

Menggeser Pointer Dengan Powerscript

Menggeser Pointer dari satu Field ke Field yang Lain

Dalam kesempatan kali ini saya akan menuliskan cara memindahkan pointer dari satu field ke field lain dengan powerscript.

untuk tema kali ini hal pertama yang perlu dilakukan adalah 

1. membuat ataupun menambahkan event dalam datawindow
    
    










2. berikan return type untuk event ini "long"

















3. lalu berikan syntax pada event tersebut dengan script sebagai berikut :

int            li_column_number,li_column_count,first_column
boolean   lb_enter,lb_dwnrow,lb_uparrow

lb_enter                                  =keydown(keyenter!)
lb_dwnrow                              =keydown(keydownarrow!)
lb_uparrow                             =keydown(keyuparrow!)

li_column_number    = dw_1.getcolumn()
li_column_count        = integer(dw_1.object.datawindow.column.count)

first_column   =1

if keyflags = 0 then
    if lb_enter or lb_dwnrow  then
            if li_column_number = integer(dw_1.object.datawindow.column.count) then
                        dw_1.setcolumn(first_column)
            else
                        dw_1.setcolumn(li_column_number + 1)
            end if
    elseif lb_uparrow then
            if li_column_number=1 then
                        dw_1.setcolumn(integer(dw_1.object.datawindow.column.count))
            else
                        dw_1.setcolumn(li_column_number - 1)
            end if
    end if
elseif keyflags=1 then
    if lb_uparrow then
            if li_column_number=integer(dw_1.object.datawindow.column.count) then
                        dw_1.setcolumn(first_column)
            else
                        dw_1.setcolumn(li_column_number + 1)
            end if
    elseif lb_enter or lb_dwnrow  then
            if li_column_number=1 then
                        dw_1.setcolumn(integer(dw_1.object.datawindow.column.count))
            else
                        dw_1.setcolumn(li_column_number - 1)
            end if
    end if
else     
    return 0
end if
return 1

Berikut adalah penjelasan untuk return type dari Keyflags
Keyflags = 0 artinya tanpa ada penekanan tombol kombinasi dg tombol function lain.
Keyflags = 1 ada penekanan tombol dg Shift
Keyflags = 2 ada penekanan tombol dg Ctrl
Keyflags = 3 ada penekanan tombol dg Shift + Ctrl
Keyflags = 4 ada penekanan tombol dg Alt  dst-nya.
Keydown berfungsi untuk menentukan tombol apakah yg di tekan user.
Keydown(enter!) artinya jika/apakah yg di tekan ENTER…..





Demikianlah yang dapat di tulis kali semoga bermanfaat bagi semua.
Terimakasih atas kunjungannya






Dimana ada kemauan ... disitu ada jalan ...

2 comments: