데이터베이스에서 데이터를 가져 와서 테이블 뷰어의 테이블에 표시 할 수 있지만 행을 클릭하면 데이터를 편집 할 수있는 다른 형식으로 나타납니다. 클릭 업데이트에 대한 새로운 값으로 업데이 트해야합니다. 내가 선택한 행을 검색하는 데 사용하고 있지만, 나는 테이블을 업데이 트하는 방법을 얻지 못하고 있습니다. 일부 아이디어를 제안 해주십시오.테이블 뷰의 열 업데이트
나는 아래에 적어 두었습니다. 개체가 생성 될 때마다 내 클래스의 생성자에 코드가 생성됩니다. 테이블이 생성되고 l1은 다른 UI로 전달되는 데이터의 목록입니다.
input[i] = new MyModel(persons[i].getDateOfRegistration(), persons[i].getFirstName(),
persons[i].getMiddleName(), persons[i].getLastName(), persons[i].getGender(),
persons[i].getDob(), persons[i].getContactNumber(), persons[i].getMaritalStatus(),
persons[i].getAddress(), persons[i].getCountry(), persons[i].getBloodGroup(),
persons[i].getInsuranceDetails().getPolicyHolderName(),
persons[i].getInsuranceDetails().getPolicyNumber(),
persons[i].getInsuranceDetails().getSubscriberName(),
persons[i].getInsuranceDetails().getRelationshipToPatient());
viewer.setInput(input);
table.setHeaderVisible(true);
table.setLinesVisible(true);
GridData gridData = new GridData();
gridData.verticalAlignment = GridData.FILL;
gridData.horizontalSpan = 2;
gridData.grabExcessHorizontalSpace = true;
gridData.grabExcessVerticalSpace = true;
gridData.horizontalAlignment = GridData.FILL;
viewer.getControl().setLayoutData(gridData);
viewer.addSelectionChangedListener(new ISelectionChangedListener() {
public void selectionChanged(SelectionChangedEvent event) {
IStructuredSelection selection = (IStructuredSelection) event.getSelection();
StringBuffer sb = new StringBuffer("Selection - ");
int j = 0;
String[] s;
for (Iterator iterator = selection.iterator(); iterator.hasNext();) {
sb.append(iterator.next() + ", ");
System.out.println("Testing::" + sb);
}
System.out.println(sb);
String result[] = new String[18];
List l1 = new ArrayList(100);
String[] parts = sb.toString().split("=");
for (int i = 0; i < parts.length; i++) {
System.out.println("s" + parts[i]);
String[] s1 = parts[i].split(",");
l1.add(s1[0]);
}
SWTPatientRegistrationUpdatePageEventView swtPatientRegistrationUpdatePageEventView = new SWTPatientRegistrationUpdatePageEventView();
swtPatientRegistrationUpdatePageEventView.openParentUpdateShell(l1);
// viewer.refresh();
//flag=false;
//refreshingData(list);
}
});
테이블 셀 편집기와 EditingSupport 클래스를 사용합니다. [이 튜토리얼] (http://www.vogella.com/tutorials/EclipseJFaceTableAdvanced/article.html)을 참조하십시오. –
전체 생성자를 유지하면 생성되지 않습니다. 어떤 문제? 나는 내가 그것을하고있는 길을 계속하면 콘텐츠와 테이블 뷰어 또는 벌금을 설정하는 별도의 클래스를 유지해야합니까? –