Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ФИО / 8 сообщений из 8, страница 1 из 1
23.06.2009, 18:00
    #36056234
dimasik_s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
Всем доброго времени суток !!!
сразу уточню тот факт, что я даже не студент в этом деле. Просто взялся и все.

Есть такая проблема: не знаю как в TextBox настройть первые буквы заглавными. Если ставлю в InputMask значение !, то он ставит там только одну букву. остальные (w) не ставлю т.к. там получаться пробелы, да и вообще не угодаеш какой длины будит фамилия, а дахрена значений ставить тоже не кчему.

Подскажите как грамотно сделать, что бы первая буква была ззаглавной, а все отальное поумолчанию.
...
Рейтинг: 0 / 0
23.06.2009, 18:06
    #36056248
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
Код: plaintext
?proper("иванов и. и.")
...
Рейтинг: 0 / 0
23.06.2009, 18:08
    #36056256
dimasik_s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
Dag
Спасибо :)
...
Рейтинг: 0 / 0
23.06.2009, 18:22
    #36056286
dimasik_s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
Dag
Код: plaintext
?proper(thisform.text1.value)


Он конечно записывает их заглавными, но прямо на форму :)
А мне надо что бы просто в TextBox первая буква менялась на заглавную, и не надо ее не куда писать
...
Рейтинг: 0 / 0
23.06.2009, 18:23
    #36056292
Анатолий Широков
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
dimasik_s,

Надо написать функцию, которой передать значение textbox для корректировки

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
thisform.txtFIO.Value = AllFirstUpper(thisform.txtFIO.Value)
...

* первая буква слова заглавная
function FirstUpper
lparameters tcWord
     tcWord = alltrim(m.tcWord)
     return upper(substr(m.tcWord,  1 ,  1 )) + substr(m.tcWord,  2 )
endfunc

* все первые буквы слов заглавные
function AllFirstUpper
lparameters tcWords
     local lnCount, lnWord, lcResult
     local array laWords( 1 )
     tcWords = alltrim(m.tcWords)
     * превращаем спецсимволы в пробелы
     tcWords = chrtran(m.tcWords, chr( 9 )+chr( 13 )+chr( 10 ), [  ])
     * пробелы превращаем в перевод каретки
     tcWords = strtran(m.tcWords, [ ], chr( 13 )+chr( 10 ))
     lnCount = alines(laWords, m.tcWords, .t.)
     lcResult = ""
     for lnWord =  1  to m.lnCount
     	  if empty(laWords[m.lnWord])
     	  	loop
     	  endif
          if !empty(m.lcResult)
			lcResult = m.lcResult + ' '
          endif
          lcResult = m.lcResult + FirstUpper(laWords[m.lnWord])
     endfor
     return m.lcResult
endfunc
...
Рейтинг: 0 / 0
23.06.2009, 18:28
    #36056298
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
dimasik_s,
Например так:
thisform.textbox1. lostfocus (или valid):
Код: plaintext
1.
this.value=proper(this.value)
this.refresh()
PS. Анатолий Широков, функция proper и так ведь работает с русскими буквами.
...
Рейтинг: 0 / 0
23.06.2009, 18:37
    #36056313
Анатолий Широков
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
tanglirdimasik_s,
Например так:
thisform.textbox1. lostfocus (или valid):
Код: plaintext
1.
this.value=proper(this.value)
this.refresh()
PS. Анатолий Широков, функция proper и так ведь работает с русскими буквами.

Да, я признаться, не знал о ее существовании. Ну, отнесем мой ответ к категории "это вы можете сами" ;)
...
Рейтинг: 0 / 0
23.06.2009, 18:54
    #36056331
dimasik_s
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ФИО
Анатолий Широков, tanglir,

Спасибо! попробую все примеры :)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ФИО / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]