Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
87 / 87 / 1
Регистрация: 30.06.2011
Сообщений: 123

Выполнение расчета по одному нажатию Кнопки.

19.02.2012, 19:47. Показов 1427. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем! помогите пожалуйста разобраться. Я делаю расчеты по Таблице. Но мне приходиться
2 раза нажимать на одну и ту же кнопку, чтобы весь расчет был полностью завершен.
при втором нажатии на кнопку срабатывает эта функция.
DataSource2->DataSet->FieldByName("Plastik")->Value = floor(Plastik);
Как избежать двойного нажатия на кнопку?
я даже в конце кода поставил Button3->OnClick; чтобы он сам себя кликал.
Button3->OnClick; Но не срабатывает. Вот мой пример Кода:

C++
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
void __fastcall TForm1::Button3Click(TObject *Sender)
{
Extended Nalog,S,S2,Zarplata,Plastik,Nalichka;
Table2->First();
   while(!Table2->Eof)
 {
 S = (Table2Oklad->Value)/(Table2PrivChasi->Value);
S2 = S*(Table2OtRChasi->Value);
Nalog = (Table2PodohodNalog->Value + Table2PenFond->Value
 + Table2ProFsouz->Value+Table2Alimenti->Value+Table2PenNak->Value)*(0.01)* S2;
Zarplata = S2-(Nalog)-(Table2Svet->Value+Table2Gaz->Value+Table2Subbotnik->Value);
Plastik = Zarplata*(0.01)*(StrToInt(Table2Plastic->Text));
Nalichka = Zarplata -Plastik;
     DataSource2->DataSet->Edit();
 
DataSource2->DataSet->FieldByName("Plastik")->Value = floor(Plastik);
     DataSource2->DataSet->FieldByName("KViplate")->Value = floor(Nalichka);
     //   if  (DataSource2->DataSet->FieldByName("KViplate")->Value <=0 )
      {
      DataSource2->DataSet->FieldByName("KViplate")->Value = 0;
      }
     // DataSource2->DataSet->FieldByName("PodSum")->Value = floor(S2*(Table2PodohodNalog->Value)*(0.01));
     DataSource2->DataSet->FieldByName("PenFSum")->Value = floor(S2*(Table2PenFond->Value)*(0.01));
     DataSource2->DataSet->FieldByName("ProFSum")->Value = floor(S2*(Table2ProFsouz->Value)*(0.01));
     DataSource2->DataSet->FieldByName("PenNakSum")->Value = floor(S2*(Table2PenNak->Value)*(0.01));
     DataSource2->DataSet->FieldByName("AlimSum")->Value  = floor(S2*(Table2Alimenti->Value)*(0.01));
     DataSource2->DataSet->FieldByName("Nachisleno")->Value = floor(S2);
 
        if (Table2PodohodNalog->Text == Form3->DBEdit8->Text)
      {
      DataSource2->DataSet->FieldByName("PodSum")->Value = floor((0.01)*(S2)*StrToInt(Form3->DBEdit8->Text));
      }
       if (Table2PodohodNalog->Text == Form3->DBEdit9->Text)
      {
      DataSource2->DataSet->FieldByName("PodSum")->Value = floor((S2)*(0.01)*StrToInt(Form3->DBEdit9->Text)) - floor((0.3)*StrToInt(Form3->DBEdit7->Text));
      }
      if (Table2PodohodNalog->Text == Form3->DBEdit10->Text)
      {
      DataSource2->DataSet->FieldByName("PodSum")->Value = floor((S2)*(0.01)*StrToInt(Form3->DBEdit10->Text)) - floor((0.9)*StrToInt(Form3->DBEdit7->Text));
      }
  DataSource2->DataSet->Post();
     Table2->Next();
 }
  Table2->First();
 Button3->OnClick;
  Button3->OnClick;
}
 Комментарий модератора 
Используйте теги форматирования кода!

Все ровно приходиться 2 раза нажимать.
Помогите советами. Заранее Благодарю.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.02.2012, 19:47
Ответы с готовыми решениями:

Выполнение действия по нажатию кнопки
Здравствуйте, дорогие программисты! Как сделать так в Windows Forms, чтобы при нажатие кнопки срабатывало какое-нибудь действие...

Выполнение запросов к БД по нажатию кнопки
Почему кнопка не выполняет этот скрипт по нажатию??? база подключина!!! &lt;form action=&quot;&quot; method=&quot;post&quot;&gt; ...

Выполнение действия по нажатию кнопки
Делаю шутер на андроид,нашел в интернете подходящий мне скрипт для оружия но там выстрел происходит при нажатие клавиши мыши пытался...

3
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
20.02.2012, 10:30
Цитата Сообщение от Nikolay88_X Посмотреть сообщение
Extended Nalog,S,S2,Zarplata,Plastik,Nalichka;
Что это за тип данных Extended?
1
87 / 87 / 1
Регистрация: 30.06.2011
Сообщений: 123
20.02.2012, 20:14  [ТС]
Extended формат который хранит большие числа.
It should be 7 or less for values of type float, 15 or less for values of type double, and 18 or less for values of type Extended. The meaning of the digits parameter depends on the particular format selected.

Дело не в этом. Даже когда ставлю float тоже самое приходиться нажимать два раза.
Ну это явно не в компиляторе и не в операционке дело. Помогите советами очень прошу.

Добавлено через 26 минут
Даже в базе Acces тоже самое приходиться два раза нажимать на кнопку, чтобы расчет полностью
выполнился. Может сам DataSet не рассчитан для таких операций. Может есть другой способ задать
цикл для всей таблице.
0
87 / 87 / 1
Регистрация: 30.06.2011
Сообщений: 123
22.02.2012, 22:51  [ТС]
Люди помогите идеями. что может быть в чем загвозка?

Добавлено через 27 минут
Все получилось Разобрался нужно было сделать так.
Button3->Click();
Button3->Click();

но это грубый метод 2 раза вызывать ее. но почему по одному нажатию Расчет полностью не выполняется, это очень странно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.02.2012, 22:51
Помогаю со студенческими работами здесь

Выполнение скрипта по нажатию кнопки из админки
Доброго времени суток. Я только начал изучение django. Стоит задача запустить выполнение python скрипта из админки при нажатий кнопки...

Выполнение действия по нажатию кнопки Enter
Привет! Такой вопрос: есть код private void button1_Click(object sender, KeyEventArgs e) { if (Keys.Enter ==...

Выполнение процедуры на сервере по нажатию кнопки
Kak pri nazhatii na knopku (&lt;input type='button'...) wypolnit' proceduru na servere? To jest', 4toby v polu4ennom klijentom HTML-code etoj...

Выполнение действия по нажатию кнопки Enter
Форумчане, доброго вам времени суток! Столкнулся сейчас с такой вот проблемой: на форме у меня есть 2 текстбокса и две кнопки,...

Выполнение php - кода по нажатию кнопки
Надо выполнить php-код по нажатию кнопки. Как это лучше сделать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru