Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Редактирование string

19K
15 октября 2007 года
necron
28 / / 16.09.2007
Мне нужно создать программу, где вводится и шифруется текст. Каждый его символ должен менятся на определённый мною. Я точно знаю что так можно не незнаю как именно:(
Каков код смены в переменной опредёлённых символов на другой?
Например я создаю edit и button в диалоговом окне, и в edit создаю переменную text1. Как теперь убрать в ней все W и вместо них поставить F?
Я пытылся вот что вставить:
[FONT="Arial"]text1;
UpdateData(true);
text1.Find("v");
text1.Insert("1");[/FONT]Ну понятное дело не работало:D
Незнаю даже что и делать просьбы помоч
Заранее спасибо:)
320
15 октября 2007 года
m_Valery
1.0K / / 08.01.2007
 
Код:
...
             CString ss;
    m_edit.GetWindowTextA(ss);
             ss.Replace( 'w', 'f' );
    m_edit.SetWindowTextA(ss);
...

Записываем в строку содержимое текстового поля.Функция int Replace( TCHAR chOld, TCHAR chNew ) - заменяет символы chOld на chNew и возвращает количество проведенных замен или 0, если их не было.
19K
15 октября 2007 года
necron
28 / / 16.09.2007
void CшифровчикDlg::OnBnClickedButton1()
{
text1;
UpdateData(true);

CString ss;
ss=text1;
m_edit.GetWindowTextA(ss);
ss.Replace( 'w', 'f' );
m_edit.SetWindowTextA(ss);

// TODO: Add your control notification handler code here
}


Вот код а вот и ошибки:
error C2065: 'm_edit' : undeclared identifier
left of '.SetWindowTextA' must have class/struct/union
error C2228: left of '.GetWindowTextA' must have class/struct/union
Может я должен был о чёмто догодаться:(
Но я тут пока в этой области больше как нуб, просьба посмотреть ошибки и обьяснить более разжованно что я сделал нетак
Опятьже заранее благодарю:)
320
15 октября 2007 года
m_Valery
1.0K / / 08.01.2007
Цитата: necron

Вот код а вот и ошибки:
error C2065: 'm_edit' : undeclared identifier


m_edit - контрол-переменная текстового поля.Обьявлена,как CEdit m_edit.Ты ж ее добавь...Или как он а у тебя называется text1 ...

Цитата: necron

left of '.SetWindowTextA' must have class/struct/union
error C2228: left of '.GetWindowTextA' must have class/struct/union
Может я должен был о чёмто догодаться:(
Но я тут пока в этой области больше как нуб, просьба посмотреть ошибки и обьяснить более разжованно что я сделал нетак
Опятьже заранее благодарю:)


Для этой контрол-переменной и вызывается эта функция.В 2003 студии просто SetWindowText.

19K
15 октября 2007 года
necron
28 / / 16.09.2007
void CшифровчикDlg::OnBnClickedButton1()
{
text1;
UpdateData(true);

CString ss;

text1.GetWindowTextA(ss);
ss.Replace( 'w', 'f' );
text1.SetWindowTextA(ss);

// TODO: Add your control notification handler code here
}
Вот новый код. 1 ошибка ушла 2 осталось:D
теперь новые ошибки:

is not a member of 'ATL::CStringT<BaseType,StringTraits>'
1> with
1> [
1> BaseType=wchar_t,
1> StringTraits=StrTraitMFC_DLL<wchar_t>
1> ]

error C2039: 'SetWindowTextA' : is not a member of 'ATL::CStringT<BaseType,StringTraits>'
1> with
1> [
1> BaseType=wchar_t,
1> StringTraits=StrTraitMFC_DLL<wchar_t>
1> ]

Что-то опять я намудрил видимо. А кстати переменныу в edit надо как контрол или как валью задавать?
Я так и так пытался, но безрезультатно. Я понимаю что наверное уже тебя достал но буду плагодарен если обьясниш мне это:)
Кстати я в visual studio C++8.0 работаю, если это важно
320
15 октября 2007 года
m_Valery
1.0K / / 08.01.2007
В этом коде text1 - контрол-переменная.Тут тогда надо в Properties проекта убрать юникод,чтоб работало.
Можно сделать и value-переменную типа CString.Тогда в ф-ии обработчике нажатия кнопки напиши
 
Код:
UpdateData(true);
            ss.Replace( 'w', 'f' );
            UpdateData(false);

Вводим в текстовое поле текст,допустим "wwwwwwwwww",нажимаем кнопку и получаем "ffffffffff",юникод можно теперь не убирать.
19K
15 октября 2007 года
necron
28 / / 16.09.2007
:D Спасибо, теперь я смогу создать свою первую прогу, которую показать хотяб будет не стыдно, как сделаю сюда выложу:D
Лови плюсик за терпение. Не каждый бы мне это обьяснил за день:)
19K
19 октября 2007 года
necron
28 / / 16.09.2007
http://dump.ru/files/n/n111834471/
Вот и программа =)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог