Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C++ Builder > ФОКУС |
Автор: moroz11 26.3.2007, 10:32 |
Я только начала изучать язык С++Builder 6. У меня проблема.Подскажите,как при выборе пункта меню(описанного в TreeView слева на форме )-- в правой стороне экрана (это таблица помещенная в Grid) укать фокус на столбце этой таблицы. DBGrid->SetFocus(); --не помогает. Спасибо |
Автор: _hunter 26.3.2007, 11:14 |
если именно на столбце -- установи свойсво Col в нужное число. |
Автор: moroz11 26.3.2007, 13:50 |
int N ; N=DBGrid1->SelectedIndex; SprCol=DBGrid1->Columns->Items[0]->SetFocus(); Или как ? У меня плохо пока с языком. Помогите Спасибо |
Автор: _hunter 26.3.2007, 13:58 |
нет. DBGrid1->Col = 5; |
Автор: moroz11 26.3.2007, 15:17 |
Я помещаю кусок программы,который срабатывает при запуске задачи. Всавила я предлагаемую Вами строку DBGrid1->Col=1; -ошибка: [C++ Error] mainform.cpp(50): E2247 'TCustomGrid::Col' is not accessible ********************** программа *********** if(TreeView1->Selected->Text == "Справочник лицевых счетов") { //Выбираем sql M_Lsab->ADOQueryLsab->SQL->LoadFromFile("Lsab.sql"); Str1 = M_Lsab->ADOQueryLsab->SQL->Text; //Выбираем куда грузить набор данных из таблицы M_Lsab->DataSourceLsab->DataSet = M_Lsab->ADOQueryLsab; //Связываем возвращаемый набор данных и визуальные компоненты DBGrid1->DataSource = M_Lsab->DataSourceLsab; DBNavigatorSprLsab->DataSource = M_Lsab->DataSourceLsab; //открываем M_Lsab->ADOQueryLsab->Open(); DBGrid1->Col=1; //M_Lsab->ADOQueryLsab->SetFocus(); } ******************************** |
Автор: _hunter 26.3.2007, 16:28 |
значит нужно делать наследника и открывать это свойство в нем... |
Автор: moroz11 27.3.2007, 09:08 |
Жаль,но помощи от ваших предложений никакой.Одни только намеки. |
Автор: _hunter 27.3.2007, 11:02 |
конкретика: делать так: http://forum.vingrad.ru/index.php?showtopic=142915&view=findpost&p=1077300 вместо using TStringGrid::MoveColumn; впиши свое свойство. |
Автор: moroz11 28.3.2007, 13:31 |
***********Фокус******* M_Lsab->DataSourceLsab->DataSet->First(); //перемещае курсор на Distance записей и возвр-т число записей,на кот.он переместился M_Lsab->DataSourceLsab->DataSet->MoveBy(0); //установка курсора в 1-й столбец DBGrid1->SelectedIndex=0; DBGrid1->SetFocus(); Все работает |