maxdddca123
Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Вопрос: у меня есть кнопка выбора папки (типа обзора) res:=BrowseForFolder('Веберите папку базы 1С', UserSelectDir, False); мне нужно, что бы после нажатия Ок в этой форме вылезала другая форма, куда юзер вводить имя базы.... Написал вот так, не работает, помогите где не так ? procedure BrowseOnClick(Sender: TObject); var res: Boolean; UserSelectDir: String; Form: TSetupForm; OKButton, CancelButton: TButton; Memo1: TMemo; NewStaticText1: TNewStaticText; begin res:=BrowseForFolder('Веберите папку базы 1С', UserSelectDir, False); if res then RegGetValueNames(HKEY_CURRENT_USER, 'Software\1C\1Cv7\7.7\Titles', Names) begin SelectedDir:= UserSelectDir+'\'; for i:= 1 to GetArrayLength(Names) - 1 do begin if SelectedDir = Names[I] then begin MsgBox('Эта база уже присутствует в списке !', mbInformation, MB_OK); SelectedDir:=''; Exit; end; end; Form := CreateCustomForm(); try Form.ClientWidth := ScaleX(256); Form.ClientHeight := ScaleY(256); Form.Caption := 'TSetupForm'; Form.CenterInsideControl(WizardForm, False); // Memo1 Memo1 := TMemo.Create(Form); with Memo1 do begin Parent := Form; Left := ScaleX(0); Top := ScaleY(32); Width := ScaleX(185); Height := ScaleY(25); Lines.Add(ExpandConstant('')); TabOrder := 1; end; // NewStaticText1 NewStaticText1 := TNewStaticText.Create(Form); with NewStaticText1 do begin Parent := Form; Caption := ExpandConstant('Введите название базы'); Left := ScaleX(16); Top := ScaleY(8); Width := ScaleX(155); Height := ScaleY(14); TabOrder := 2; end; OKButton := TButton.Create(Form); OKButton.Parent := Form; OKButton.Width := ScaleX(75); OKButton.Height := ScaleY(23); OKButton.Left := Form.ClientWidth - ScaleX(75 + 6 + 75 + 10); OKButton.Top := Form.ClientHeight - ScaleY(23 + 10); OKButton.Caption := 'OK'; OKButton.ModalResult := mrOk; CancelButton := TButton.Create(Form); CancelButton.Parent := Form; CancelButton.Width := ScaleX(75); CancelButton.Height := ScaleY(23); CancelButton.Left := Form.ClientWidth - ScaleX(75 + 10); CancelButton.Top := Form.ClientHeight - ScaleY(23 + 10); CancelButton.Caption := 'Cancel'; CancelButton.ModalResult := mrCancel; CancelButton.Cancel := True; SelectedDir:= UserSelectDir+'\'; Page.CheckListBox.AddCheckBox('1C Налогоплательщик', SelectedDir, 0, True, True, False, False, nil); RegWriteStringValue(HKEY_CURRENT_USER, 'Software\1C\1Cv7\7.7\Titles', SelectedDir, '1C Налогоплательщик'); SelectedDir:=''; finally Form.Free(); end; end; end; |