Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Пара вопросов от новичка / 4 сообщений из 4, страница 1 из 1
26.12.2006, 00:13
    #34223843
sb8
sb8
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов от новичка
1) Такой вот вопрос. есть две формы. первая - главная. вторая, например, "options" для первого окна.я в первой форме жму кнопочку, появляется вторая форма, на которой нужно поставить разные галочки и заполнить "Едиты". Вот как сделать, чтобы события этих галочек и "Едитов" отображались в первой форме?
Пример: Меняю цвет и заголовок для первого окна во второй форме.
Вопрос очень нужный!

2) Может есть у кого инфа, в которой описывается работа программы с *.ini файлами для записи туда своих настроек. Желательно поподробнее.

C++ Builder 2006

Заранее всем ответившим спасибо!
...
Рейтинг: 0 / 0
26.12.2006, 01:04
    #34223865
sashka304
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов от новичка
sb81) Такой вот вопрос. есть две формы. первая - главная. вторая, например, "options" для первого окна.я в первой форме жму кнопочку, появляется вторая форма, на которой нужно поставить разные галочки и заполнить "Едиты". Вот как сделать, чтобы события этих галочек и "Едитов" отображались в первой форме?
Пример: Меняю цвет и заголовок для первого окна во второй форме.
Вопрос очень нужный!

ну можно на прамую обращатся например Form1->Caption = Form2->Edit1->Text
sb8
2) Может есть у кого инфа, в которой описывается работа программы с *.ini файлами для записи туда своих настроек. Желательно поподробнее.

C++ Builder 2006

Заранее всем ответившим спасибо!
почитай в хелпе про TIniFiles
...
Рейтинг: 0 / 0
26.12.2006, 07:41
    #34224031
muk07
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов от новичка
Регистрация в БД
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
#include "io.h"
#include "inifiles.hpp"
extern LPSTR CommandLine;
//------------------------------------------
int Login(TADOConnection *Cnct, AnsiString &ServerMessage){
// возвращает код ошибки, выявленный регистрацией,
// в ServerMessage помещает сообщение сервера
AnsiString UserName,Password,IniFileName;
int DotPos,Ret= 0  /* код возврата */;
TfrmLogin *f;
TIniFile *ini;
AnsiString ServerName,DatabaseName;
bool HaveIni;

// если CommandLine не пусто, то это имя ini файла в командной строке
if(CommandLine!=NULL && CommandLine[ 0 ]!='\0'){
    IniFileName=CommandLine;
} else {
    // полагаем, что ini - файл зовут также, как и exe-файл, и
    // что находится он в том же каталоге, но имеет расширение ini
    IniFileName=Application->ExeName;
    // где точка перед exe
    DotPos=IniFileName.Pos(".");
    IniFileName=IniFileName.SubString( 1 ,DotPos)+"ini";
}

// существует ли ini - файл
HaveIni=access(IniFileName.c_str(), 0 )== 0 ;
ini=new TIniFile(IniFileName);
if(HaveIni){
    // возьмем оттуда имя пользователя и, возможно
    // имена сервера и БД
    UserName=ini->ReadString("common", "USER NAME","");
    ServerName=ini->ReadString("common","SERVER NAME","");
    DatabaseName=ini->ReadString("common","DATABASE NAME","");
}

if(HaveIni){
    if(ServerName.IsEmpty()){
        Ret=NO_SERVERNAME;
    }
    if(DatabaseName.IsEmpty()){
        Ret=NO_DATABASENAME;
    }
}
if(Ret!= 0 ){
    // не хватает данных для открытия БД
    delete ini;
    return Ret;
}

f=new TfrmLogin(Application);
// в окне диалога регистрации установим последнего пользователя
f->edtName->Text=UserName;
// установить английский язык
LoadKeyboardLayout("00000409", KLF_ACTIVATE);
int rf=f->ShowModal();
if(rf< 0 ){
    delete ini;
    delete f;
    return USER_CANCEL;
}
// установить русский язык
LoadKeyboardLayout("00000419", KLF_ACTIVATE);
UserName=f->edtName->Text;
Password=f->edtPassword->Text;
delete f;

// формирование строки соединения
AnsiString ConnectionString=
  "Provider=SQLOLEDB.1; "
  "Persist Sequrity Info=false; "
  "Use Procedure for Prepare=1;"
  "Auto Translate=true;"
  "Packet Size=4096;"
  "Use Encryption for Data=false;"
  "Tag with column collation when possible=false;";
ConnectionString=ConnectionString+
//  "Workstation ID="+CompName+";"  +
  "Initial Catalog="+DatabaseName+";"  +
  "Data Source="+ServerName+";"  +
  "User ID="+UserName+";"  +
  "Password="+Password;

try{
    if(Cnct->Connected){
        Cnct->Close();
    }
    Cnct->LoginPrompt=false;
    Cnct->ConnectionString=ConnectionString;
    Cnct->Open();
    // возможно изменился пользователь - изменим в ini - файле
    ini->DeleteKey("common","USER NAME");
    ini->WriteString("common","USER NAME",UserName);
    ini->UpdateFile();
}
catch(Exception &e){
    Ret=DB_NOTOPEN;
    ServerMessage=e.Message;
}
delete ini;
return Ret;
}

Содержимое ini-файла:
[common]
DATABASE NAME=Warehouse
SERVER NAME=MIKE
USER NAME=mk
...
Рейтинг: 0 / 0
27.12.2006, 19:54
    #34229007
sb8
sb8
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пара вопросов от новичка
sashka304[quot sb8]1) Такой вот вопрос. есть две формы. первая - главная. вторая, например, "options" для первого окна.я в первой форме жму кнопочку, появляется вторая форма, на которой нужно поставить разные галочки и заполнить "Едиты". Вот как сделать, чтобы события этих галочек и "Едитов" отображались в первой форме?
Пример: Меняю цвет и заголовок для первого окна во второй форме.
Вопрос очень нужный!

ну можно на прамую обращатся например Form1->Caption = Form2->Edit1->Text
[quot sb8]

Ничего не получилось.
В какой обработчик событий эту строчку записать надо?
И как должны работать кнопки "OK" и "Отмена" во второй форме?
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Пара вопросов от новичка / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]