Текущий архив: 2007.11.25;
Скачать: CL | DM;
Вниз
Всего лишь переставить крестик Найти похожие ветки
← →
timekiller (2007-11-04 21:02) [0]Есть таблица, в 7м и 2м столбце при открытии программы хаотично меняются данные, но некоторые из них совпадают (ячейка 7го равна ячейки 2го столбца)
помогите найти и ПЕРЕСТАВИТЬ крестик (Х) на совпадающих ячейках
тоесть если крест БЫЛ, то его надо переставить, если его нет - крест не нужен
Неправильный (предположительный) код:
for z:=0 to TComboBox(Sender).Items.Count-1 do
begin
if SG_Values.Cells[9,z]="X" then
begin
if SG_Values.Cells[7,z]=SG_Values.Cells[2,z]
then SG_Values.Cells[9,z]:="X"
else SG_Values.Cells[9,z]:="";
end;
end;
У меня уже совсем крыша едет
Подробнее о самой программе:
это парсер XML файлов, в таблицу заносятся данные строк TComboBox, их строки (<lines>) идут один за другим и затем +к этому считываются текущий TComboBox.Text полностью количеством в один столбец - для каждого свой текст и диапазон ячеек в столбце
Есть HTML бланк, есть этот X крестик, который возникает динамически из шаблонов (типа XLS)
который индексирует своим передвижением что будет (если крестик поставлен) показано в HTML бланке по тагу каждого TComboBox (таги как имена тоже столбцом прописаны в StringGrid values)
Фишак "Переставить крест" обрабатывается путем OnChange или загрузки голого XML через шаблон
фухххххххххх ... если я прально написал вобще и ниче не упустил ..
← →
Johnmen © (2007-11-05 00:21) [1]У нас крыша давно съехала из-за таких, как ты.
читай, просветляйся http://ln.com.ua/~openxs/articles/smart-questions-ru.html
← →
Amoeba © (2007-11-05 01:36) [2]
> фухххххххххх ... если я прально написал вобще и ниче не
> упустил ..
>
Вряд ли у кого-нибудь возникнет желание отвечать на столь бестолково сформулированный вопрос
← →
timekiller (2007-11-05 12:03) [3]Щас попробую собрать волю ..в мозги
Таблица Всех ComboBox ПОСТРОЧНО записана в таблицу
имя...значения.....крест
[Бокс1линия1][1][4][ ]
[Бокс1линия2][2][4][ ]
[Бокс1линия3][3][4][ ]
[Бокс1линия4][4][4][X]
[Бокс1линия5][5][4][ ]
[Бокс2линия1][1][1][ ]
[Бокс2линия2][2][1][ ]
[Бокс3линия1][1][2][ ]
[Бокс3линия2][2][2][Х]
[Бокс3линия3][3][2][ ]
в диапазоне 1го ComboBoxa крест, показывающий пересекающиеся значения ЕСТЬ, но значения в 3м столбце этого диапазона вдруг резко все изменились на 5 5 5 5 5 :) Тоесть крестик должен переместиться чуть ниже ..
Потом во втором диапазоне (2й ComboBox) значения изменились, но креста там нету .. знач не должно быть ..
Ну и соответственно "к вечеру" меняются значения 3го ComboBox, где злосчастный крест опять есть ..
Так более соображаемо?
← →
Anatoly Podgoretsky © (2007-11-05 12:17) [4]> timekiller (05.11.2007 12:03:03) [3]
И в чем проблема со сравнением в цикле
cells[i, ,j] = cells[i+, ,j] и простановке крестика или его снятия.
Это же задачка для непрограммирующих пользователей.
← →
timekiller (2007-11-05 12:57) [5]> cells[i, ,j] = cells[i+, ,j]
Похоже лишняя запятая ..
Expression expected but "," found
Попробую так сделать :
for XXX:=TComboBox(Sender).Tag-TComboBox(Sender).Items.Count-1 to TComboBox(Sender).Items.Count-1 do
if SG_Values.Cells[9,z]="X" hen
for z:=TComboBox(Sender).Tag-TComboBox(Sender).Items.Count-1 to TComboBox(Sender).Items.Count-1 do
begin
if SG_Values.Cells[7,z]=SG_Values.Cells[2,z]
then SG_Values.Cells[9,z]:="X"
else SG_Values.Cells[9,z]:="";
end;
Я не "непрограмирующий", тоесть я не в уме а в программу залез, в делфи, и программирующий сегодня 15минут, вчера программирующий пол часика гдето, начинающий совсем еще
Страницы: 1 вся ветка
Текущий архив: 2007.11.25;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.038 c