Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.09.2010, 20:26   #1
Von
Пользователь
 
Регистрация: 19.03.2010
Сообщений: 26
По умолчанию Как в С++ Builder 6 описать кнопку VB_BAKC

Как в С++ Builder 6 описать кнопку VB_BAKC?
Von вне форума Ответить с цитированием
Старый 25.09.2010, 22:35   #2
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

А теперь еще раз то же самое, только по-русски. Что значит "описать кнопку"? Что за кнопка такая? Что она делает? Что должна делать ваша программа? В каком контексте вам нужна эта кнопка?
Код:
#ifndef ВсеЭто
#include <telepat.h>
#endif
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 26.09.2010, 08:08   #3
Von
Пользователь
 
Регистрация: 19.03.2010
Сообщений: 26
По умолчанию

При нажатии на эту кнопку, стираются цифры с окна ричэдит, и стираются по одной. Как в обычном калькуляторе (<-) - стрелка, или на клавиатуре... (Backspace)
Пробывал много вариантов...
void __fastcall TForm1::Button33KeyDown(TObject *Sender, WORD &Key,
TShiftState Shift)
{
if ( Key == VK_BACK);
}
Реакции нет...

void __fastcall TForm1::Button33Click(TObject *Sender)
{
RichEdit1->Text == VK_BACK ;
}
Тоже не подходит...
Мне кажется, что начало такое... Возможно, я не прав.
RichEdit1->Text = ""
А дальше нужно уточнение и корректировка... Но вопрос какая?
А может, вообще, все ни так...
Von вне форума Ответить с цитированием
Старый 26.09.2010, 09:30   #4
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Ситуация проясняется... Насколько я понял, у вас на форме есть кнопка, и при нажатии в RichEdit должен удаляться один символ?
Вообще вам бы первым делом надо бы раскопать хорошую книжку по Сям, затем хорошую книжку по Билдеру и курить до полного просветления.

Итак, будем логичны. Нужно, чтоб было все по нажатию кнопки - пихаем все в событие Button33Click. Далее, код клавиши Backspace вам не нужен совсем. Разве что вы будете посылать RichEdit'у событие нажатия клавиши или эмулировать таковое. Но что-то мне подсказывает, что вряд ли это то, чего вы хотите. Просто выбросьте из головы VK_BACK - вам оно тут ни к селу, ни к городу.
Вам нужно манипулировать со строкой. Поэтому для начала получаем строку, которую надо редактировать. Потом удаляем из нее один символ. Затем засовываем эту строку обратно - в RichEdit. Желательно еще установить обратно позицию курсора.
Код:
void __fastcall TForm1::Button33Click(TObject *Sender)
{
AnsiString s = RichEdit1 -> Lines -> Text;   //Получаем полный текст из RichEdit
int pos = RichEdit1 -> SelStart;   //А это - позиция курсора
s.Delete(pos, 1);   //Удаляем из строки один символ начиная с нужной позиции
RichEdit1 -> Lines -> Text = s;   //Модифицированную строку присваиваем обратно
RichEdit1 -> SelStart = pos - 1;   //Сдвигаем курсор на одну позицию назад
}
А вообще - читаем и еще раз читаем книжки, и не забываем пользоваться тегом CODE!
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 26.09.2010, 14:54   #5
Von
Пользователь
 
Регистрация: 19.03.2010
Сообщений: 26
По умолчанию

Спасибо! Код работает... Книги читаю... Архангельского, да и другие есть... Но ответ, на свой вопрос не нашел... Может ни там искал... На будущие вопросы, я вроде, нашел ответы, а там посмотрим...
Код хороший, но есть, маленькая "проблемка"
Когда в окно ричэдит пишу цифры почему-то только 1-9, потом стираю по-очередности и полностью, но после, почему-то, не ставятся символы...
Но это, я думаю решу... Скорее всего, надо откорректировать код, поставить, в нужное направление...
Еще раз спасибо!
Von вне форума Ответить с цитированием
Старый 26.09.2010, 15:28   #6
Von
Пользователь
 
Регистрация: 19.03.2010
Сообщений: 26
По умолчанию

Гром, после стирания, например несколько цифр, другие цифры не ставятся...
Von вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка картинки из файла в Excel при нажатии на кнопку "Экспортировать" из C++ Builder ArTemi4 Помощь студентам 0 06.06.2010 19:48
Как описать класс на языке С# ? diliana Помощь студентам 8 20.04.2010 17:01
Не знаю как описАть вопрос ToBs Помощь студентам 2 17.12.2009 20:44
Как правильно описать функцию? аукшщ Общие вопросы C/C++ 2 19.01.2009 11:37