crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Задать имя объекта не имея SetObjectName
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Litkevich Yuriy Дата 27.12.2009, 23:32
 
Цитата(JuryS1806 @ 28.12.2009, 2:13) *
тогда можете снести ее.
я её перенесу в Библиотеки->Другое

Цитата(JuryS1806 @ 28.12.2009, 2:13) *
А еще такой вопрос: undefined reference to ...
Как с этим бороться ? что я не так делаю ???
не хватает include
JuryS1806 Дата 27.12.2009, 23:13
  тогда можете снести ее. Но если получится задать атрибуты объектов - ОПИШУ ПОДРОБНО.

А еще такой вопрос: undefined reference to ...
Как с этим бороться ? что я не так делаю ???
Litkevich Yuriy Дата 27.12.2009, 23:10
  здаётся мне, что тема не имеет отношения к Qt.
JuryS1806 Дата 27.12.2009, 22:33
  Вот и я думал так сделать ! Уже написал программу, все интерактивные режимы и операции ! Блин, а теперь выяснил, что не могу графическим объектам задать атрибуты, да черт с ними, хотя бы имя объекта, атрибуты можно и отдельно хранить.

нет там никаких SetObjectName.
есть TDF_Label, TDF_Attributes... но под QT оно не работает. Все время бьет ошибку undefined reference error, хотя под MS Visual собирается нормально.

Блин я в тупике. Я могу обратиться к этим объектам, могу их удалять, складывать , вычитать... Могу вывести их в список, !но имя присваивается им при создании и ВСЕ ТУТ ! хоть тресни !

AIS_Point* Point1 = new AIS_Point(new Geom_CartesianPoint(Point));

значит создасться точка с именем Point1 а при следующем добавлении точки это имя затирается. Хотя точка остается и также можно с ней работать.

ОДНИМ СЛОВОМ, ДУРДОМ !
Litkevich Yuriy Дата 27.12.2009, 22:21
 
Цитата(JuryS1806 @ 28.12.2009, 1:17) *
AIS_Point* ss = new AIS_Point(new Geom_CartesianPoint(Point));

Это тоже самое как мы создаем QAction:

QAction* <имя> = new QAction (...)
Ни чё не понимаю, если это тоже самое т.е. AIS_Point является наследником QObject, то и пиши ss->setObjectName("ююю").
В чём проблема.
JuryS1806 Дата 27.12.2009, 22:17
  Для управления объектами Open CASCADE предлагает механизм, известный как handle, наследуемый от MMgt_Tshared-класса. Handle - это дескриптор, который автоматически перераспределяет память.....

Одним словом, Handle здесь совсем не обязательно.
можно просто:

AIS_Point* ss = new AIS_Point(new Geom_CartesianPoint(Point));

Это тоже самое как мы создаем QAction:

QAction* <имя> = new QAction (...)

А ВОТ КАК ЗАДАТЬ ИМЯ?! УМА НЕ ПРИЛОЖУ. ДВА ДНЯ УЖЕ !!!
Litkevich Yuriy Дата 27.12.2009, 21:29
  Из твоего первого соощения, совершенно ничего не понятно.
Например, что это такое
Цитата(JuryS1806 @ 27.12.2009, 2:52) *
Handle(AIS_Point) ss = new AIS_Point(new Geom_CartesianPoint(Point));
.
Ты чего-то себе подразумеваешь, а другим не рассказываешь.

Какому классу ты хочешь задать имя объекта? Он самописаный? Ты не можешь придумать как хранить имя объекта в сомописаном классе?
JuryS1806 Дата 27.12.2009, 21:19
  2 дня никаких результатов. И вправду это уже даже не смешно ! Может быть хоть какие-то мысли ? Что можно попробовать ?? Как передать имя объекта в функцию ?
JuryS1806 Дата 27.12.2009, 2:16
  По ходу задача не выполнима. А все таки, даже если я создаю элементарный QAction:

QAction * <имя акшона> = new QAction(...);

Или в принципе это не возможно. Нужно при написании программы жестко задавать имя ?
JuryS1806 Дата 27.12.2009, 0:25
  Я не совсем понял. Сейчас аналог открыл Salome-Meca. Так вот они свой класс ввели вместо Handle(AIS_Interactive) используют Handel(SALOME_InteractiveObject)

Но ведь по идее даже если создавать не OpenCascade объекты, ведь возможно задать имя объекта ? Или я чего не так понял.
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 14:58