Модераторы: gambit, Partizan
  

Поиск:

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


Новичок



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

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



Подскажите началкину! Мне осталось для написания моей первой программы калькулятор (кто тока не проходил через него smile ) 2 нерешенных вопроса:
1) обработчик для кнопки bacspace! Как найти в строке символ "," и принять значение либо boolean либо отличное от нуля?
2) например есть 2 текстбокса!как отключить привязку клавиш к кнопкам (кнопки для первого бокса) на время когда focusируешь 2ой бокс, а то получается и там вводит и там!!?? Можно конечно отключить привязку клавиш 0 - 9, отключить readonly и на textbox.keypress кинуть "ввод только цифр"! Но может есть другие идеи, как стоит вопрос?

Цитата


P.S.: 
[censored 6]  smile !!! на заочке изучать, можно сказать первый, язык!! Книг понакачал!!Самому доперать по текстам книг это реальный  smile  пдц! Хорошо хоть инет есть 
и какая-никая, но соображалка бывает присутствует
  smile  smile 


Это сообщение отредактировал(а) Antiform - 5.4.2008, 00:30
PM MAIL   Вверх
PaZ1T1V
Дата 5.4.2008, 08:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 169
Регистрация: 26.2.2008
Где: Багдад )

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



Цитата

 Как найти в строке символ "," и принять значение либо boolean либо отличное от нуля?


Код


public bool contains = false;

private void button1_Click(object sender, EventArgs e)
        {
               if (textBox1.Text.Contains(","))
                       contains = true;
        }



и дальше делай 4то тебе надо smile)

так понял или нет ? 

а про второй 4е то вообще ни4о нипонятно )

Это сообщение отредактировал(а) PaZ1T1V - 5.4.2008, 08:49
--------------------
[size=8]Atention please!!![/size]
[size=6]Кривые руки[/size]
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Antiform
Дата 5.4.2008, 09:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата

и дальше делай 4то тебе надо )так понял или нет ? а про второй 4е то вообще ни4о нипонятно


Спасибо за новый метод в первом вопросе! А второй есть 2 текстбокса!например
Код

  private void buttonKey_1_Click(object sender, EventArgs e) // кнопка
        {          
                DispCalc.Text += ((Button)sender).Text.ToString();
         }

 private void Form1_KeyDown(object sender, KeyEventArgs e) 
        {
            if (e.KeyCode.Equals(Keys.D1) || e.KeyCode.Equals(Keys.NumPad1)) // соответствующая клавиша
                buttonKey_1.PerformClick();
         }
 как отключить привязку клавиш к кнопкам (кнопки для первого бокса) на время когда focusируешь 2ой бокс, а то получается и там вводит и там???
PM MAIL   Вверх
PaZ1T1V
Дата 6.4.2008, 05:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 169
Регистрация: 26.2.2008
Где: Багдад )

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



используй PreviewKeyDown

Код


private void Button1_PreviewKeyDown()
{
         e.//свойство; 
}


--------------------
[size=8]Atention please!!![/size]
[size=6]Кривые руки[/size]
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Antiform
Дата 7.4.2008, 16:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



PaZ1T1V будь добр, по подробней опиши! PreviewKeyDown на форме у меня стоит true
PM MAIL   Вверх
PaZ1T1V
Дата 7.4.2008, 19:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 169
Регистрация: 26.2.2008
Где: Багдад )

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



ой, какой превьюкейдавн ??? сорри погнал

 smile 

хм, тут делается все проше, есть такое свойство readonly называется, если тебе не надо вообще во второй текстбокс цыфры- буквы нажимать, то поставь в конструкторе

textBox1.ReadOnly = true;
и + забели фон 

, а если нет, то ексть в него надо вводить когда нибудь, 4то нибудь то поставь во втором тексте в keyDown, то же самое  и + забели фон 

к примеру 

        private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
        {
            textBox1.ReadOnly = true;
            textBox1.BackColor = richTextBox1.BackColor;
        } 

и в KeyUp делай обратное 

         private void richTextBox1_KeyUp(object sender, KeyEventArgs e)
        {
            textBox1.ReadOnly = false;
            textBox1.BackColor = richTextBox1.BackColor;
        } 

должно сканать, если дело в фокусе, а если нет,то пиши...

Это сообщение отредактировал(а) PaZ1T1V - 7.4.2008, 19:53
--------------------
[size=8]Atention please!!![/size]
[size=6]Кривые руки[/size]
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Antiform
Дата 7.4.2008, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Readonly у меня тру на главном боксе!
Код


 private void buttonKey_1_Click(object sender, EventArgs e) // кнопка
        {          
                GlavtextBox.Text += ((Button)sender).Text.ToString(); // <===== Этот код в первый бокс добавляет текст кнопки, то бишь "1"
         }

 private void Form1_KeyDown(object sender, KeyEventArgs e) 
        {
            if (e.KeyCode.Equals(Keys.D1) || e.KeyCode.Equals(Keys.NumPad1)) // <===== Этот код его активирует, то бишь ридонли по барабану
                buttonKey_1.PerformClick();
         }

Как сделать чтобы при фокусе на другой бокс, в главном боксе ни чего не печаталось при нажатии например на "1".
Пока писал мысля пришла! может здесь просто сделать как нить так
Код
 
private void buttonKey_1_Click(object sender, EventArgs e) // кнопка
        {        
           if (textBox2.Focus() == true)   //тока не получается этот фокус (все равно в другом боксе тоже пишет, он по другому я чувствую как то прописывается, но смысл я думаю понятен????
              {           
              }
           else
              {  
                GlavtextBox.Text += ((Button)sender).Text.ToString(); // <===== Этот код в первый бокс добавляет текст кнопки, то бишь "1"
              }
      }



Это сообщение отредактировал(а) Antiform - 7.4.2008, 20:44
PM MAIL   Вверх
PaZ1T1V
Дата 8.4.2008, 10:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 169
Регистрация: 26.2.2008
Где: Багдад )

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



ба, сдаюсь, спроси у гуру каково нибудь...... или кинь сюда весь сурс код, мб помогу...... 
--------------------
[size=8]Atention please!!![/size]
[size=6]Кривые руки[/size]
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Мурлыкатам_
Дата 8.4.2008, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 5.2.2007
Где: город-герой Минск

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



А зачем вообще второй текст бокс?

В чем вообще трабл?
Если у тя печатается одновременно в двух боксах, значит ты где-то упоминул имя второго текст бокса, чтобы туда писать,
покажи место, которое пишет в текст боксы.

Че-то не могу припомнить калькулятор с двумя текст боксами...  smile 

Это сообщение отредактировал(а) Мурлыкатам_ - 8.4.2008, 13:09


--------------------
Хочешь что-то сделать - сделай это сам или попроси помощи на винграде smile
user posted image
PM MAIL ICQ   Вверх
Antiform
Дата 8.4.2008, 17:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Всё!!! Додумался! надо так:

Код

 private void Form1_KeyDown(object sender, KeyEventArgs e) 
        {
        
            if (textBox2.Focused == true)  <--- Вот так работает!
            {

            }

            else
            {
                if (e.KeyCode.Equals(Keys.D1) || e.KeyCode.Equals(Keys.NumPad1))
                    buttonKey_1.PerformClick();

                if (e.KeyCode.Equals(Keys.D2) || e.KeyCode.Equals(Keys.NumPad2))
                    buttonKey_2.PerformClick();
                 .......
             }
}


Лучше подскажите какой ключ у звездочки, деления(слэш), плюса и минуса на нам локе ====> e.KeyCode.Equals(Keys.???????)







Это сообщение отредактировал(а) Antiform - 8.4.2008, 17:46
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


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

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


 




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


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

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