สงสัยจะเป็นจาก ตรงนี้มั้ง
14792 procedure TDoctorDeskForm.SeSkinCheckBox4MouseUp(Sender: TObject;
14793 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
14794 begin
14795 RefreshLABItems;
14796 end;
ตอนที่ event MouseUp ทำงาน seskincheckbox4.checked มันอาจจะยังไม่เปลี่ยนสถานะ
ลองแก้ไขให้มัน RefreshLABItems เมื่อเกิด event Click แทนดีไหมครับ (ส่วนใน MouseUp ก็ไม่ต้อง RefreshLABItems)
ประมาณนี้
procedure TDoctorDeskForm.SeSkinCheckBox4Click(Sender: TObject);
begin
RefreshLABItems;
end;
ไม่รู้จะใช้ได้หรือเปล่านะครับ ผมไม่สามารถ compile โปรแกรมนี้เองได้
แก้ไข : ผมแก้ไขรูปแบบข้อความ เอา [ code ] ออก เพราะเปิดดูใน firefox แล้วมันดูแปลกๆ อ่านยาก เลยเปลี่ยนเป็น [ sub ] แทน