|  20.09.2006, 12:22 | #1 | 
| Участник | Основы работы с FormTableControl 
			
			Добрый день!  Пытаюсь разобраться с элементом управления FormTableControl, в рамках следующей задачки: имеется мастер... на предыдущих шагах быбраны таблица и некоторые ее поля.... требуется предоставить возможность пользователю изменить значения выбраных полей. Для реализации я решил использовать FormTableControl в следующем контексте: сделать табличку из двух колонок, в первой будет название поля(например) в во второй значение соответствующего типа(которое должно вводиться)... подскажите пожайлуста с чего мне начать... и как это все можно организовать?  пыталься искать по FormTableControl в форуме.... но ничего понятного не нашел.... | 
|  | 
|  20.09.2006, 12:24 | #2 | 
| Moderator | 
			
			см Form --> Tutorial_Form_Table
		 | 
|  | 
|  20.09.2006, 12:29 | #3 | 
| Участник | |
|  | 
|  20.09.2006, 12:34 | #4 | 
| Moderator | 
			
			Может быть приводить все значения к строке?
		 | 
|  | 
|  20.09.2006, 12:43 | #5 | 
| Участник | |
|  | 
|  20.09.2006, 12:49 | #6 | 
| Участник | 
			
			Посмотрите форму SysQueryForm - это форма наложения фильтров на запросы в формах. Там как раз на любой случай жизни и lookup, и отображение полей - все, как вам нужно.   Заодно и с формой этой разберетесь - полезно все таки   | 
|  | 
|  20.09.2006, 13:22 | #7 | 
| Участник | 
			
			но я все таки хотел разобраться с FormTableControl... а какая реализация будет более трудоемкой?
		 | 
|  | 
|  20.09.2006, 13:24 | #8 | 
| Участник | 
			
			ИМХО, та, которую я предложил. Вы же сразу сможете использовать таблицу TmpSysQuery - грид по ней и т.д. и т.п.
		 | 
|  | 
|  20.09.2006, 14:07 | #9 | 
| Участник | 
			
			хорошо.. задам более конкретный вопрос: для чего нужен метод editControl на FormTableControl? И почему после того как я его перекрыл и возвратил нужный контрол в таблице он не появился?
		 | 
|  | 
|  20.09.2006, 16:39 | #10 | 
| Участник | 
			
			editControl rabotaet na podobie EditMethod... to est pri pererisovke i izmenenii tekushego kursora vizivajetsja etot metod, stob otobrazit i dlja vvoda informacii vot moj primer, kak vvseti "plan" po mesjacam i vse rabotaet Код: public FormControl editControl(int _Column, int _Row)
{
    FormControl ret;
    //ret = super(_Column, _Row);
    ret = Ctrl_Dummy;
    if ( _column <= #MONTHS_OFFSET ) {
        switch ( _column ) {
            case  1 :   ret = Ctrl_ECCName;
                        break;
            case  2 :   ret = Ctrl_AmountView;
                        break;
        }
    } else {
        ret = Ctrl_AmountEdit;
    }
    return ret;
}Последний раз редактировалось Delfins; 20.09.2006 в 16:45. | 
|  | 
|  21.09.2006, 07:08 | #11 | 
| Участник | 
			
			Правильно ли я понимаю что элементы Ctrl_ECCName и Ctrl_AmountView уже находятся на  FormTableControl... а как быть если я хочу добавить некоторые другие элементы управления с помощью метода addControl?  Ах да, хочу отметить что основная проблема у меня с элементом ComboBox... т.к. за ранне не известен тип данных и поэтому в свойстве EnumType этого элемента управлнения ничего изначально не стоит... а когда я узнаю кокой тип будет я определяю его.... но если в FormTableControl будет несколько элементов ComboBox, то все они получают этот тип  .  и еще проблема: прив выборе значения из ComboBox оно не остается в нем... при переходе к другому элементу только что выбранное значение затирается  ничего не понимаю   | 
|  | 
|  21.09.2006, 10:01 | #12 | 
| Участник | 
			
			a kak eto mozno doboljat Control i neznat' chto tam budet - IMHO, osibka v logike, v rezultate i budet osibka v kode/runtime. V tvojem slucaee pomozet Control Mapping - delaes 2 massiva/map-a FormControl controls[]; boolean initializedControls[]; dalse uze isches shto u tebja est i chego netu. PS: da, kontroli nado sozdovat do prorisovki. poetomu oni dobavleni v FormTableControl zaranee - dalse uze tolko prorisvka po kodu editControl() | 
|  | 
|  21.09.2006, 10:31 | #13 | 
| Участник | 
			
			Хорошо, с добовлением контролов я справился... осталась еще одна: при использовании ComboBox в FormTableControl после выбора пользователем значения это значение не сохраняется, а тутже(при потере фокуса) затирается.... что для него нужно еще сделать?! А еще при использовании IntEdit после ввода некоторого числа оно тоже затирается и заменяется на какие то безумные числа...
		 Последний раз редактировалось PavelSR; 21.09.2006 в 10:54. | 
|  |