[파워빌더] Datawindow의 Row를 동시에 Select하기
// argument : datawindow adw_multi, long al_row
// 여러개의 Row를 선택할 datawindow와 현재 click한 Row
// return 0 실패 1 성공
Long ll_for1
Long ll_end1
Long ll_FirstSelRow
Long ll_Row
// zero row Return
IF al_row <= 0 THEN
RETURN 0
END IF
// Shift Key
IF KeyDown(KeyShift!) THEN
// Find First Selected Row
ll_FirstSelRow = adw_multi.GetSelectedRow(0)
IF ll_FirstSelRow > 0 THEN
adw_multi.SelectRow(0, FALSE)
IF ll_FirstSelRow > al_row THEN
FOR ll_Row = ll_FirstSelRow TO al_row STEP -1
adw_multi.SelectRow(ll_Row, TRUE)
NEXT
ELSE
FOR ll_Row = ll_FirstSelRow TO al_row STEP 1
adw_multi.SelectRow(ll_Row, TRUE)
NEXT
END IF
RETURN 1
END IF
ELSE
// Control Key
IF Not KeyDown(KeyControl!) THEN
adw_multi.SelectRow(0, FALSE)
END IF
IF adw_multi.IsSelected(al_row) THEN
adw_multi.SelectRow(al_row, FALSE)
ELSE
adw_multi.SelectRow(al_row, TRUE)
END IF
END IF
RETURN 1
// 여러개의 Row를 선택할 datawindow와 현재 click한 Row
// return 0 실패 1 성공
Long ll_for1
Long ll_end1
Long ll_FirstSelRow
Long ll_Row
// zero row Return
IF al_row <= 0 THEN
RETURN 0
END IF
// Shift Key
IF KeyDown(KeyShift!) THEN
// Find First Selected Row
ll_FirstSelRow = adw_multi.GetSelectedRow(0)
IF ll_FirstSelRow > 0 THEN
adw_multi.SelectRow(0, FALSE)
IF ll_FirstSelRow > al_row THEN
FOR ll_Row = ll_FirstSelRow TO al_row STEP -1
adw_multi.SelectRow(ll_Row, TRUE)
NEXT
ELSE
FOR ll_Row = ll_FirstSelRow TO al_row STEP 1
adw_multi.SelectRow(ll_Row, TRUE)
NEXT
END IF
RETURN 1
END IF
ELSE
// Control Key
IF Not KeyDown(KeyControl!) THEN
adw_multi.SelectRow(0, FALSE)
END IF
IF adw_multi.IsSelected(al_row) THEN
adw_multi.SelectRow(al_row, FALSE)
ELSE
adw_multi.SelectRow(al_row, TRUE)
END IF
END IF
RETURN 1