Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
5 / 5 / 0
Регистрация: 21.12.2008
Сообщений: 82
1

Обмен данными с контролами (MFC,vs6.0)

03.02.2009, 16:39. Показов 1810. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите как отправить строку в Edit. Я пишу VCC 6.0. Создал переменую типа CString, взять даные от туда я могу, и в приинципе отправить строку тоже, но вот заполнить по элементно как-то никак.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.02.2009, 16:39
Ответы с готовыми решениями:

Обмен данными
В планах обмена при выгрузке данных у нас удаляются...

NW.js Обмен данными
Пишу простенькое приложение на NW.js, буквально 4 окна. Использую html, bootstrap, jquery Возник...

Обмен данными в 8.1
Добрый день. Можно ли организовать обмен (или хотябы загрузка\выгрузка по требованию) между двумя...

Обмен данными
Привет всем! Нужно передать данные из html странички открытой в браузере и находящейся на...

10
54 / 50 / 9
Регистрация: 16.05.2008
Сообщений: 162
03.02.2009, 17:24 2
пробуй SetDlgItemText
0
Заблокирован
03.02.2009, 17:32 3
4ainik, если ты используешь MFC то сначала нужно сделать привязку CEditBox :
View->ClassWizard, перейти на вкладку MemberVariables, выбрать твой эдит и нажать кнопку AddVariable - прописываем имя эдита в проге лучше всего m_edit1, выбираем в поле тип CString и жмём ОК. Переменная CString m_edit1 уже есть в проге

Ввод строки из эдита :
Код
CString str = m_edit1;
UpdateData(true);
Вывод строки в эдит
Код
CString str = "some string";
m_edit1 = str;
UpdateData(false);
0
5 / 5 / 0
Регистрация: 21.12.2008
Сообщений: 82
04.02.2009, 20:46  [ТС] 4
Парни код такой
C++
1
2
3
4
5
6
7
l=strlen(m_str);
for(i=0;i<=l-1;i++)
{
z=m_str[i];
z=temp(z,m_e,n);
m_desh[i]=z;
}
вот на на строке m_desh[i]=z и ошибка пишет что значение слева не l-value
я менял способ на m_desh+ =z пишет что 4 оператора перегружены
короче хз как туда массивчик закинуть. Притом что если m_desh="string", то все сразу нормально. Короче парни без вас ни как:'(
0
Эксперт С++
2255 / 770 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
04.02.2009, 21:57 5
Цитата Сообщение от YurA_280784 Посмотреть сообщение

Ввод строки из эдита :
Код
CString str = m_edit1;
UpdateData(true);
То есть,логика твоя такая. сначала сохраняем значение из переменной,сопоставленной контролу в str. А потом сохраняем значение из контрола в m_edit1. Чувствуешь ущербность?
0
5 / 5 / 0
Регистрация: 21.12.2008
Сообщений: 82
05.02.2009, 21:24  [ТС] 6
XuTPbIu_MuHTAu, Пока нет мож обьяснишь как нужно было сделать.
Я исходил из принципа что CString масив(коим является m_str и m_desh) с '\0'символом на конце и все что касается работы с ним то они остаются теми же. То есть я могу взять из масива m_str элементы обработать их и пересохранить в другой масив m_desh. Оба масива являются объявлеными перемеными правда разных, но edi.t
0
Эксперт С++
2255 / 770 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
05.02.2009, 21:34 7
CString - это не массив.Это класс. Дя него определен оператор индексирования,но все же,это - класс. Речь не об этом.Тебе нужно знать всего одну функцию:
UpdateData. Если ее вызвать с параметром true данные будут занесены из контрола в сопоставленную переменную.Если с параметром false - будут перенесены из переменной в контрол. Причем этот метод вызывается в диалоге и затрагивает все контролы.В общем,твой код должен выглядеть так:
Код
UpdateData(true);
////
////
////bla-bla-bla
UpdateData(false);
0
5 / 5 / 0
Регистрация: 21.12.2008
Сообщений: 82
05.02.2009, 21:42  [ТС] 8
Дорогой XuTPbIu_MuHTAu, спасибо за пояснения прости что не понял в первый раз, но у меня ошибка всмысле error номер я не помню на строке
m_desh[i]= z; компилятор в описание написал что левый оператор должен быть l-value
0
Эксперт С++
2255 / 770 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
05.02.2009, 21:54 9
Цитата Сообщение от 4ainik Посмотреть сообщение
Дорогой XuTPbIu_MuHTAu, спасибо за пояснения прости что не понял в первый раз, но у меня ошибка всмысле error номер я не помню на строке
m_desh[i]= z; компилятор в описание написал что левый оператор должен быть l-value
дорогой?

в общем,оператор индексации возвращает символ,но не ссылку на него,то есть редактировать не получится.
Зато у ССтринга есть куча других методов.Insert,например.
Напиши CString:: - студия покажет,что можно делать.
0
5 / 5 / 0
Регистрация: 21.12.2008
Сообщений: 82
05.02.2009, 22:13  [ТС] 10
XuTPbIu_MuHTAu, Брат
Объясни тогда такую ситуацию у меня есть масив joker как его содержимое переправить в m_desh
0
Заблокирован
06.02.2009, 09:14 11
XuTPbIu_MuHTAu я просто показал использование метода обмена данными с диалоговым окном UpdateData(), если уже менять стринг нуна тогда вот полный код
Код
CString str = m_edit1;
UpdateData(true);

str += "Eshe chego nibud'";

m_edit2 = str;//Например эдит2 - элемент куда выводить
//а если в пропертисах эдита не ставить ReadOnly 
//то можно и в первый эдит выкинуть
//програмер сам выбирает что куда кидать
m_edit1 = "Vvod bil proizveden";

UpdateData(false);
Ну а если вообще писать чего нить на нотпад похоже дык тока ж с одним эдитом и работать, там только поставить свойство Whant return, чёб энтер означал перевод строки, ну и конечно мультистрочность не забыть....
0
06.02.2009, 09:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.02.2009, 09:14
Помогаю со студенческими работами здесь

Обмен данными
Добрый день, подскажите как реализовать следующее в базе данных создаем поручение отправляем...

Обмен данными
Привет всем! У меня возникла такая проблема - нет пункта в меню &quot;сервис&quot; - &quot;обмен данными&quot;. Версия...

1С-обмен данными
Здравтсвуйте. Такая ситуация. Нужен обмен между одинаковыми конфигурациями. Причем из одной (общей)...

Обмен данными
Друзья, помогите осуществить задумку. Нужно считывать таблицу с данными из клиентского приложения,...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru