Название: Как передать все значения из таблицы в одной функции в другую? Отправлено: PulSar.CE3194694 от Апрель 28, 2010, 20:08 Добрый день!
Есть проблема - не знаю как передать значения, записанные в таблицу в одной функции в другую, чтобы она их считала. Кратко о том, что я делаю. Создал диалог, в котором на экран монитора выводиться пустая таблица. Пользователь должен вбить в нее некоторые числа, при необходимости юзер с помощью кнопки "Добавить строку" может добавить в таблицу еще строки и вписать в них значения. Далее я в моей этой функции делаю перевод данных ячеек в формат float, далее эти числа записываю в многомерный (двумерный) массив (например Values[N][2]), где N - итоговое количество строк в нашей таблице. После этого эмитируется мною созданный сигнал из этой функции, в котором я пытаюсь сказать, что передаются этот массив, размерность и кое-какие другие параметры. Этот сигнал принимает некоторый слот, в котором, исходя из введенных значений, рассчитывается некоторая величина. Проблема в том, что я не знаю, как правильно создать сигнал (как должны быть указаны в нем аргументы) и слот (аналогично). Собственно, как передать двухмерный массив в слот через сигнал? помогите пожалуйста! Если нужно, могу выложить код. Название: Re: Как передать все значения из таблицы в одной функции в другую? Отправлено: 0xFF от Апрель 28, 2010, 20:51 Если двумерный массив с участием N, то видимо он создается так?
Код Если так то в сигнал/слот просто передать myArr Код
Название: Re: Как передать все значения из таблицы в одной функции в другую? Отправлено: PulSar.CE3194694 от Апрель 29, 2010, 20:35 Нет, создавал так:
int N; N=//тут какнибудь присваиваем значение. double Array[N][2]; Название: Re: Как передать все значения из таблицы в одной функции в другую? Отправлено: 0xFF от Апрель 29, 2010, 21:13 А разве такое компилируется?
Попробуй так передать: Код
в коде просто: Код
Название: Re: Как передать все значения из таблицы в одной функции в другую? Отправлено: PulSar.CE3194694 от Май 01, 2010, 12:46 Забил на эти массивы. Удалось просто разбить на 2 отдельных массива. А их передать просто как указатель.
Название: Re: Как передать все значения из таблицы в одной функции в другую? Отправлено: PulSar.CE3194694 от Май 03, 2010, 13:28 Теперь другой вопрос: как передать массив (double или QPointF) в void paintEvent(QPaintEvent *event)? Данный массив создавался в вообще отдельном классе (а точнее в одной из функций этого класса), а пейнтэвент объявлен в классе Главного Окна. Вот если его передать в созданную мною функцию, то без проблем, передаю указатель. А туда не знаю как... Ведь добавлять аргументы в paintEvent нельзя, не будет рисовать.
Придумал способ: перебросить все значения этого массива в массив, который я непосредственно создам в private или public зонах класса Г.О. Тогда paintEvent его будет видеть и нарисует. Но тогда не знаю как его объявить. Так: QPointF NewArray[N] - не получается, пишет кучу ошибок. Как тогда сделать? Или можно вообще по-другому, без создания нового массива? Помогите плиз! :) Название: Re: Как передать все значения из таблицы в одной функции в другую? Отправлено: 0xFF от Май 03, 2010, 20:00 Код
не годится? Название: Re: Как передать все значения из таблицы в одной функции в другую? Отправлено: PulSar.CE3194694 от Май 03, 2010, 20:58 Да, спасибо! Уже разобрался! :) :)
|