Текущий архив: 2008.04.13;
Скачать: CL | DM;
Вниз
как привести вводимый символ к верхнему регистру Найти похожие ветки
← →
{RASkov} © (2008-03-19 18:29) [40]....В итоге когда я подогнал кран и спустил к тебе(в яму) крюк, ты умудрился ударится о него головой и потерять сознание.... :(
← →
AntonUSAnoV (2008-03-19 18:30) [41]Вы вообще допускаете вариант что я только учусь, не могу разобраться, вследствие чего и обращаюсь к мастерам за советом, и я понимаю что Вы помогаете по принципу "Догадайся сам" что правильно, и я понял что не понял про совместимость типов, что скорее всего потому что с charом пока тесно не знакомился...
← →
{RASkov} © (2008-03-19 18:41) [42]> [41] AntonUSAnoV (19.03.08 18:30)
Как тебе помочь? Или всеж решил уже свою проблему?
Не волнуйся здесь, не против помощи, и не прикалывается никто.... только и от тебя вопросы должны быть без приколов - тоесть более-менее грамотно заданы. Вот смотри:Key: Char;
UpperCase() - String;
UpCase() - Char;
Итог: Нам нужно всего лишь Key:=UpCase(Key); Т.е. использовать функции родные для данных с которыми работаем, а не подгонять данные для работы с первой попавшейся функцией...
← →
AntonUSAnoV (2008-03-19 18:48) [43]Честное пионерское , у меня так было написано сразу после вот этого
> UpCase :(
[24]
, но прогон видно в другом месте, а Вы сразу прикалываться начали, и лишних полчаса потратили товарищи. я пишу в обработчике onkeypress в дбгриде правильно или раньше надо ?
← →
{RASkov} © (2008-03-19 18:51) [44]> [43] AntonUSAnoV (19.03.08 18:48)
> пишу в обработчике onkeypress в дбгриде правильно или раньше надо ?
Вот опять ты начинаешь наводить на себя прикалывающихся :)
Ну сам почитай свой вопрос и попробуй ответить.
Вот смотри мои ответы:
1 - Да (позже)
2 - Нет (раньше)
Ты доволен? :(
← →
AntonUSAnoV (2008-03-19 18:55) [45]не ну я счаз вообще себя дубом в пустыне чувствую, т.е. в обработчике onkeyup писать ? , но там уже тип word у key ...
← →
AntonUSAnoV (2008-03-19 18:55) [46]не ну я счаз вообще себя дубом в пустыне чувствую, т.е. в обработчике onkeyup писать ? , но там уже тип word у key ...
← →
AntonUSAnoV (2008-03-19 18:57) [47]
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: char);
begin
key:=upcase(key);
end;
← →
{RASkov} © (2008-03-19 19:01) [48]> [45] AntonUSAnoV (19.03.08 18:55)
> т.е. в обработчике onkeyup писать ?
Зачем? Почему ты пришел к такому выводу?
Насколько мне понятна твоя "проблема" тебе достаточно КейПресс, но ты же не можешь четко сформулировать вопрос, поэтому мой ответ может превести к непредсказуемым результатам, в результате чего твоя программа загнется вовсе.... :)
Поэтому важно как задан вопрос. Удачи.
> [47] AntonUSAnoV (19.03.08 18:57)
Возможно :)
← →
AntonUSAnoV (2008-03-19 19:05) [49]я конечно замучал Вас но всё же, написав этот код (47), прога запускается, но символ не приводится к верхнему регистру, я проследил по трассировке, и значит после строчки key:=upcase(key); завершается выполнение процедуры, это я проверил добавив после key:=upcase(key); ещё несколько строк с инструкциями.
← →
AntonUSAnoV (2008-03-19 19:06) [50]поясню - завершается значит перескакивает через нижестоящие инструкции
← →
Reindeer Moss Eater © (2008-03-19 19:17) [51]UpCase неэффективен не для accii символов
← →
AntonUSAnoV (2008-03-19 19:17) [52]Во избежание неясностей я создал новый проект, кинул на форму едит, в обработчике onkeypress написал
procedure TForm1.edit1KeyPress(Sender: TObject; var Key: char);
begin
key:=upcase(key);
end;
откомпилировал, и ни чего - не приводится к верхнему регистру,
← →
AntonUSAnoV (2008-03-19 19:17) [53]
> Reindeer Moss Eater © (19.03.08 19:17) [51]
> UpCase неэффективен не для accii символов
воооо ! пророк воистину, !
← →
AntonUSAnoV (2008-03-19 19:19) [54]а я бы тут до утра искал ответ ? хотя может Вы и правы, сам должен...
но всё же может кто-ни будь снизойдёт и подскажет функцию для приведения к верхнему регистру кодов accii типа char (надеюсь не бред)..
← →
Reindeer Moss Eater © (2008-03-19 19:20) [55]Ctrl + Click на UpCase покажет всю правду.
← →
Reindeer Moss Eater © (2008-03-19 19:22) [56]кто-ни будь снизойдёт и подскажет функцию для приведения к верхнему регистру кодов accii типа char (надеюсь не бред)..
UpCase
← →
AntonUSAnoV (2008-03-19 19:24) [57]ну всё выучили меня, вижу - только english, что делать то ?
← →
{RASkov} © (2008-03-19 19:25) [58]> [49] AntonUSAnoV (19.03.08 19:05)
unit RusChar;
interface
function LoCaseRu (Ch: Char): Char;
function UpCaseRu (Ch: Char): Char;
implementation
function LoCaseRu (Ch: Char): Char;
begin
case Ch of
"A".."Z": Result:=Chr(Ord("a")+Ord(Ch)-Ord("A"));
"А".."Я": Result:=Chr(Ord("а")+Ord(Ch)-Ord("А"));
"Ё": Result:="ё";
else Result:=Ch;
end;
end;
function UpCaseRu (Ch: Char): Char;
begin
case Ch of
"a".."z": Result:=Chr(Ord("A")+Ord(Ch)-Ord("a"));
"а".."я": Result:=Chr(Ord("А")+Ord(Ch)-Ord("а"));
"ё": Result:="Ё";
else Result:=Ch;
end;
end;
end.
← →
Reindeer Moss Eater © (2008-03-19 19:25) [59]Если по-русски, то UpCase неэффективен для не-accii символов
← →
Reindeer Moss Eater © (2008-03-19 19:29) [60]function AnsiUpcase(Ch : Char) : Char;
begin
Result := AnsiUpperCase(Ch)[1];
end;
← →
Johnmen © (2008-03-19 19:29) [61]
Мы, без сомнения, неприязненно относимся к людям, предположительно не желающим подумать или поучиться прежде, чем задавать вопросы. Такие люди убивают время — они берут, ничего не давая взамен, они отнимают время, которое мы могли бы посвятить другому вопросу, более интересному, и другому человеку, более достойному ответа. Таких людей мы называем "неудачниками" ("losers")
(c) http://www.rsdn.ru/Info/Howtoask.xml
← →
AntonUSAnoV (2008-03-19 19:30) [62]Получилось ! правда говоря это несколько длиннее чем
цитата: Итог: Нам нужно всего лишь Key:=UpCase(Key);
Огромное спасибо.
← →
AntonUSAnoV (2008-03-19 19:35) [63]
> Johnmen © (19.03.08 19:29) [61]
а таким людям не место в ветке для начинающих, где наверху написана отдельная просьба мастерам - быть снисходительными, ведь я свою обязанность выполнил - я был вежлив. Такие люди могут только пользоваться цитатами после того как найден ответ.
Страницы: 1 2 вся ветка
Текущий архив: 2008.04.13;
Скачать: CL | DM;
Память: 0.56 MB
Время: 0.008 c