Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 34

Ошибка Cannot convert 'TDBGridColumns' to 'TColumn *'

02.03.2012, 00:17. Показов 1017. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть такой кусок кода
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
if (Column = DBGrid1->Columns[0]  )
    {
      Query2->Active = False;
      Query2->SQL->Clear();
      if (sind == 0)
        if (sort == 0)
          {
            Query2->SQL->Add(MSQL + "order by fac desc,  number");
            sort = 1;
          }
        else
          {
            Query2->SQL->Add(MSQL + "order by fac asc,  number");
            sort = 0;
          }
      else
        {
          Query2->SQL->Add(MSQL + "order by fac asc,  number");
          sort = 0;
        }
      sind = 0;
      Query2->Active = True;
    }
в строке где if выдает такие 2 ошибки:
[C++ Warning] Unit1.cpp(174): W8060 Possibly incorrect assignment
[C++ Error] Unit1.cpp(174): E2034 Cannot convert 'TDBGridColumns' to 'TColumn *'

замучалась, подскажите что не так
спасибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.03.2012, 00:17
Ответы с готовыми решениями:

E2034 Cannot convert 'TColumn *' to 'TTntColumn *'
Помогите пожалуйста void __fastcall TMainForm::DBGrid2DrawColumnCell(TObject *Sender, const TRect &Rect, int DataCol,...

FireMonkey: Ошибка при удалении TColumn из TStringGrid
Решил попробовать так же лихо как на Delphi создать TRectangle1 на первой форме, затем TRectangle2 на второй форме и задать ей Parent =...

Ошибка cannot convert
Всем добрый день. Такое вот задание было:Вывести Объем HDD, дату издания Bios и количество интерф. принтеров. Все это из под DOS....

6
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
02.03.2012, 00:41
Опять cannot convert... ну, не умеет ваш компилятор преобразовывать объект класса в указатель на объект класса, да еще и другого.
По возможности объявите Column как
C++
1
TDBGridColumns *Column;
а для присвоения адреса этому указателю, получите этот самый адрес операцией &
C++
1
if (Column = &DBGrid1->Columns[0]  )
1
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 34
02.03.2012, 22:11  [ТС]
сделала
выдает
в коде
C++
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
void __fastcall TForm1::DBGrid1TitleClick(TDBGridColumns *Column)
 
{
if (Column = &DBGrid1->Columns[0]  )
    {
      Query2->Active = False;
      Query2->SQL->Clear();
      if (sind == 0)
        if (sort == 0)
          {
            Query2->SQL->Add(MSQL + "order by fac desc,  number");
            sort = 1;
          }
        else
          {
            Query2->SQL->Add(MSQL + "order by fac asc,  number");
            sort = 0;
          }
      else
        {
          Query2->SQL->Add(MSQL + "order by fac asc,  number");
          sort = 0;
        }
      sind = 0;
      Query2->Active = True;
    }
  if( Column = DBGrid1->Columns[1])
    {
      Query2->Active = False;
      Query2->SQL->Clear();
      if (sind ==1)
        if (sort == 0)
          {
            Query2->SQL->Add(MSQL + "order by q desc, number");
            sort = 1;
          }
        else
          {
            Query2->SQL->Add(MSQL + "order by q asc, number");
            sort = 0;
          }
      else
        {
          Query2->SQL->Add(MSQL + "order by q asc, number");
          sort = 0;
        };
      sind = 1;
      Query2->Active = True;
    };
ошибки
[C++ Error] Unit1.h(48): E2293 ) expected
[C++ Error] Unit1.cpp(58): E2316 '_fastcall TForm1:BGrid1TitleClick(TDBGridColumns *)' is not a member of 'TForm1'
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
02.03.2012, 22:25
C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TMainForm::DBGrid1TitleClick(TColumn *Column)
{
if (ADOQuery1->Active)
 if ((ADOQuery1->Sort.Pos(Column->FieldName) > 0) && (ADOQuery1->Sort.Pos("ASC") > 0))
    {
      ADOQuery1->Sort = Column->FieldName + " DESC";
    }
 else
    {
      ADOQuery1->Sort = Column->FieldName + " ASC";
    }
}
0
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
02.03.2012, 22:35
Цитата Сообщение от katkat Посмотреть сообщение
void __fastcall TForm1:BGrid1TitleClick(TDBGridColumns *Column)
Во-первых, нельзя произвольно менять параметр, передаваемый в обработчик OnClick - такой обработчик вы работать не заставите.

Во-вторых, начните, наконец, пользоваться справкой: выделите в окошке Messages строчку
C++
1
[C++ Error] Unit1.cpp(58): E2316 '_fastcall TForm1::DBGrid1TitleClick(TDBGridColumns *)' is not a member of 'TForm1'
и нажмите кнопку F1. Так вы сможете понять, что до вас пытается донести компилятор, и исправить ошибку.
0
0 / 0 / 0
Регистрация: 19.09.2011
Сообщений: 34
02.03.2012, 22:37  [ТС]
у меня нету справки
если бы была я не обращалась бы


и у меня не ADOQuery
0
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
02.03.2012, 22:53
Цитата Сообщение от katkat Посмотреть сообщение
у меня нету справки
и зря

Впрочем, есть ведь и online справка.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.03.2012, 22:53
Помогаю со студенческими работами здесь

ошибка в функции convert
пытаюсь по названию товара вывести его количество CREATE PROCEDURE Kolich (@Nazva smallint) As Begin Declare @Kol int Select...

Ошибка: cannot convert parameter
Есть кусок кода (писал спец.) USES_CONVERSION; static char szBuffer; sprintf( szBuffer, _T('%d'), val );При компиляции...

Ошибка Cannot convert AnsiString to Bool
void __fastcall TForm3::Edit1Change(TObject *Sender) { Button1->Enabled=Edit1->Text; }вот код, как исправить?

Ошибка: Cannot convert 'curPlusEl' to object
JavaScript error: Cannot convert 'curPlusEl' to object НИгде не могу найти что это такое вообще.. и что делать с этим?

Ошибка: cannot convert 'person*' to 'char*'
#include <conio.h> #include <stdio.h> #include <string.h> #include <stdlib.h> struct person { //описание структуры char f;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru