홈>
Inno Setup을 사용하여 프로그램에 setup.exe를 만듭니다. MS SQL Server에서 기존 데이터베이스의 드롭 다운 목록 (콤보 상자)을 얻고 싶습니다. 그러나 어떤 사용자 정의 마법사 페이지를 사용해야하는지 모르겠습니다. 서버 인증이있는 마법사 페이지를 만들었습니다.
어떻게하면 좋을까요? 내 코드 :
<프리 클래스 = "prettyprint 오버라이드 파스칼 LANG">[Code]
var
ServerDetailsPage: TInputQueryWizardPage;
procedure InitializeWizard;
begin
ServerDetailsPage := CreateInputQueryPage(wpSelectDir,
'', '', 'Please enter following data (SERVER) and click Next.');
ServerDetailsPage.Add('IP Address (SERVER)', False);
ServerDetailsPage.Add('Port Number (SERVER', False);
ServerDetailsPage.Add('Domain Name\User Name (SERVER)', False);
ServerDetailsPage.Add('Password (SERVER)', True);
ServerDetailsPage.Values[0] := '';
ServerDetailsPage.Values[1] := '';
ServerDetailsPage.Values[2] := '';
ServerDetailsPage.Values[3] := '';
end;
- 답변 # 1
트렌드
- OpenCv의 폴더에서 여러 이미지 읽기 (python)
- 파이썬 셀레늄 모든 "href"속성 가져 오기
- html - 자바 스크립트 - 클릭 후 변경 버튼 텍스트 변경
- javascript - 현재 URL에서 특정 div 만 새로 고침/새로 고침
- JSP에 대한 클래스를 컴파일 할 수 없습니다
- JavaScript 변수를 HTML div에 '출력'하는 방법
- git commit - 자식 - 로컬 커밋 된 파일에 대한 변경을 취소하는 방법
- jquery - JavaScript로 현재 세션 값을 얻으시겠습니까?
- javascript - swiperjs에서 정지, 재생 버튼 추가
- python - 화면에서 찾은 요소를 찾을 수없는 경우 셀레늄
콤보 상자가있는 기성품 맞춤 페이지가 없습니다.
편집 상자를 교체해야합니다 (
TPasswordEdit
) 콤보 상자 (TNewComboBox
) ).CreateInputQueryPage에 의해 생성 된 페이지의 Inno Setup에서 다중 라인 편집과 유사하게 코드는 다음과 같습니다.
<프리 클래스 = "prettyprint 오버라이드 파스칼 LANG">var ServerDetailsPage: TInputQueryWizardPage; ServerComboBox: TNewComboBox; procedure InitializeWizard; begin ServerDetailsPage := CreateInputQueryPage( wpSelectDir, '', '', 'Please enter following data (SERVER) and click Next.'); ServerDetailsPage.Add('IP Address (SERVER)', False); ServerDetailsPage.Add('Port Number (SERVER', False); ServerDetailsPage.Add('Domain Name\User Name (SERVER)', False); ServerDetailsPage.Add('Password (SERVER)', True); ServerDetailsPage.Values[0] := ''; ServerDetailsPage.Values[1] := ''; ServerDetailsPage.Values[2] := ''; ServerDetailsPage.Values[3] := ''; { Create TNewComboBox on the same parent control and the same location as edit box } ServerComboBox := TNewComboBox.Create(ServerDetailsPage); ServerComboBox.Parent := ServerDetailsPage.Edits[0].Parent; ServerComboBox.Left := ServerDetailsPage.Edits[0].Left; ServerComboBox.Top := ServerDetailsPage.Edits[0].Top; ServerComboBox.Width := ServerDetailsPage.Edits[0].Width; ServerComboBox.Height := ServerDetailsPage.Edits[0].Height; ServerComboBox.TabOrder := ServerDetailsPage.Edits[0].TabOrder; ServerComboBox.Items.Add('server1'); ServerComboBox.Items.Add('server2'); { Hide the original edit box } ServerDetailsPage.PromptLabels[0].FocusControl := ServerComboBox; { Link the label to the combo box } { (has a practical effect only if there were a keyboard accelerator on the label) } ServerDetailsPage.Edits[0].Visible := False; end;
<시간>이제 콤보 상자 값을 나타 내기 위해서는 물론
<시간>ServerDetailsPage.Values[0]
를 사용할 수 없습니다 더 이상ServerComboBox.Text
사용 대신