Модераторы: Akina

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перевод . в , 
:(
    Опции темы
Viton
  Дата 1.12.2004, 00:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 3.11.2004

Репутация: нет
Всего: нет



Поблема такова
Мне надо сделать так чтобы при написанеи в TextBox числа например:
96.12 оно перевелось в 96,12 smile
Можно при вводе в TextBox или при нажатие на кнопку.

PM MAIL ICQ   Вверх
cardinal
Дата 1.12.2004, 00:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Цитата(Viton @ 30.11.2004, 23:41)
при вводе в TextBox

Код

Private Sub Text1_KeyPress(KeyAscii As Integer)
   If KeyAscii = 44 Then KeyAscii = 46
End Sub




--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Viton
Дата 1.12.2004, 01:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 3.11.2004

Репутация: нет
Всего: нет



Это работает спасибо. smile
Точнее только для ввода цифр о ввода одной ,
типа Double

Это сообщение отредактировал(а) Viton - 1.12.2004, 01:14
PM MAIL ICQ   Вверх
cardinal
Дата 1.12.2004, 02:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



То есть не больше одной запятой чтоли?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Гость_Старуха
Дата 1.12.2004, 10:19 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Похоже у него та же проблема , что у меня была в теме Переключние регистра
  Вверх
~FoX~
Дата 1.12.2004, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЕ рыжий!!!
****


Профиль
Группа: Участник Клуба
Сообщений: 2819
Регистрация: 8.10.2003
Где: Зеленоград

Репутация: 10
Всего: 68



Цитата(cardinal @ 1.12.2004, 02:30)
То есть не больше одной запятой чтоли?

Если да, то:

Код

Dim Flag As Boolean

Private Sub Form_Load()
 Flag = False
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)
   If KeyAscii = 44 And Flag = False Then
       KeyAscii = 46
       Flag = True
   ElseIf KeyAscii = 44 And Flag <> False Then
       KeyAscii = 0
   End If
End Sub


Примерно так.


--------------------
user posted image
…множественность никогда не следует полагать без необходимости…
PM MAIL WWW ICQ Jabber   Вверх
cardinal
Дата 1.12.2004, 18:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Или так
Код

Dim Flag As Boolean

Private Sub Form_Load()
Flag = False
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)
  If KeyAscii = 44 And Flag = False Then
      KeyAscii = 46
      Flag = True
  ElseIf KeyAscii = 44 Then
      KeyAscii = 0
  End If
End Sub

smile


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Staruha
Дата 1.12.2004, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 2
Всего: 27



А может все гораздо проще

Код

  Dim c  As Double
 c = TextBox1.Text



--------------------
Возмездие настигнет
PM MAIL   Вверх
cardinal
Дата 1.12.2004, 21:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Старуха, а если запятых много понаставлено?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Staruha
Дата 1.12.2004, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 2
Всего: 27



Почитай в самом начале о чем он пишет и TextBox как то на VBA больше встречается.И у меня была такая проблема с формой. и еще добавить надо
c = CDbl(Replace(TextBox1.Text, ".", ",")) ' что б ошибок не было ,как учил bankuss


--------------------
Возмездие настигнет
PM MAIL   Вверх
cardinal
Дата 1.12.2004, 21:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



А что будет если в TextBox1.Text написано 96,56,6?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Staruha
Дата 1.12.2004, 23:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 2
Всего: 27



Если много запятых -это текст,там и так проблем не будет.


--------------------
Возмездие настигнет
PM MAIL   Вверх
Viton
Дата 1.12.2004, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 3.11.2004

Репутация: нет
Всего: нет



Цитата(cardinal @ 1.12.2004, 02:30)
То есть не больше одной запятой чтоли?

Да мне нужно чтобы было не больше одной запятой
PM MAIL ICQ   Вверх
Viton
Дата 2.12.2004, 00:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 3.11.2004

Репутация: нет
Всего: нет



как проверить наличие введённых заятых?
PM MAIL ICQ   Вверх
~FoX~
Дата 2.12.2004, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЕ рыжий!!!
****


Профиль
Группа: Участник Клуба
Сообщений: 2819
Регистрация: 8.10.2003
Где: Зеленоград

Репутация: 10
Всего: 68



Viton
Читай поста кардинала и мои


--------------------
user posted image
…множественность никогда не следует полагать без необходимости…
PM MAIL WWW ICQ Jabber   Вверх
Гость_Старуха
Дата 2.12.2004, 13:04 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Private Sub CommandButton1_Click()
Dim str As String, str1 As String, i As Integer, k As Integer
str = TextBox1.Text
strLen = Len(str)

For i = 1 To strLen
str1 = Mid(str, i, 1)
If Asc(str1) = 44 Then
k = k + 1

MsgBox "Ура!Запятая" & k

End If
Next i

End Sub


  Вверх
~FoX~
Дата 2.12.2004, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЕ рыжий!!!
****


Профиль
Группа: Участник Клуба
Сообщений: 2819
Регистрация: 8.10.2003
Где: Зеленоград

Репутация: 10
Всего: 68



2Старуха
Изврат.


--------------------
user posted image
…множественность никогда не следует полагать без необходимости…
PM MAIL WWW ICQ Jabber   Вверх
Staruha
Дата 2.12.2004, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 2
Всего: 27



Почему?


--------------------
Возмездие настигнет
PM MAIL   Вверх
cardinal
Дата 3.12.2004, 02:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Старуха, потому, что когда ввели уже поздно проверять, где и сколько запятых...


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Viton
Дата 4.12.2004, 14:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 26
Регистрация: 3.11.2004

Репутация: нет
Всего: нет



Спасибо.
Вот код котор я усовершенствовал и что мне нужно было если будут другие варианты то пишите.
Код

Public Function KeyFilter(i As Integer, s As String) As Integer
Select Case i
Case 48 To 57 '' Числа от 0 до 9
KeyFilter = i
Case 8 '' Клавиша Backspace
KeyFilter = i
Case 44 '' Клавиша запятой с проверкой ее предыдущего ввода
If InStr(1, s, ",") = 0 Then
KeyFilter = i
Else
Beep
KeyFilter = 0
End If
Case 9
KeyFilter = i
Case Else
Beep
KeyFilter = 0
End Select
End Function



Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 46 Then KeyAscii = 44
KeyAscii = KeyFilter(KeyAscii, Text1.Text)

End Sub



Это сообщение отредактировал(а) Viton - 4.12.2004, 14:38
PM MAIL ICQ   Вверх
cardinal
Дата 4.12.2004, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



А помоему если убрать все строки
Код

KeyFilter = 0

то ничего не изменится? smile

А вообще если речь идет о "фильтре", то загляни сюда:
http://forum.vingrad.ru/index.php?showtopic=27659
Получится гораздо изящней. smile


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.1001 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.