Премини към съдържанието
  • Добре дошли!

    Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

    Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

     

nrs

Програма на VB - помогнете

Препоръчан отговор


Правя(или поне се опитвам) една програмка на VB 6.0 за семейни разходи. Как обаче да направя няколко форми и след като се въведат данните в едната, да се премине в другата форма и да се допродължи въвеждането?

Пример: ако едната форма е за разходи за храна за деня, след като се въведат да се премине към въвеждане на разходи за бита - веро, прах, сапун biggrin.gif

Ако имам комбо бокс и текст бокс как мога да умножа двете стойности и те да се запишат в друго текстово поле? Но без натискане на бутон. Например от комбото избирам стойност 3, а текстовото поле въвеждам 4, какво събитие трябва да генерирам, че веднага да се сметне резултата в другото поле (12)??? Искам да се смята докато съм още в първото текстово. т.е. ако там въведа 10 да получа в другото 30?

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
Но без натискане на бутон. Например от комбото избирам стойност 3, а текстовото поле въвеждам 4, какво събитие трябва да генерирам, че веднага да се сметне резултата в другото поле (12)??? Искам да се смята докато съм още в първото текстово. т.е. ако там въведа 10 да получа в другото 30?

Имаш евент SelectedIndexChanged на combobox-а а на textbox-a - TextChanged, избираш си единият от двата в зависимост от това кога искаш да се смята, дали след като избереш стойноста от combobox-а или след като напишеш стойноста в textbox-а, но задължително другият елеметн трябва да е попълнен (т.е. да има зададена стойност). Препоръчвам ти първо да пишеш в текстбокса и след това да избираш от combobox-a (т.е. използвай SelectedIndexChanged на combobox-а)

Редактирано от yri (преглед на промените)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Пак не зацепих ohmy.gif Виж аз какво бях написал, ама не става:

Private Sub txt8_Change(Index As Integer)

txt8.Text = Combo4.Text * txt2.Text

End Sub

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

За това как да отворя втората форма някой има ли идеи? :yanim:

Сподели този отговор


Линк към този отговор
Сподели в други сайтове
За това как да отворя втората форма някой има ли идеи? :yanim:

А защо използваш версия 98 на студиото :clap:

Ако не греша: form2.show

Или най-простият случай на извикване на нова форма е нещо като:

Private Sub Button1_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles Button1.Click

Dim myForm As New Form2

myForm.Show()

End Sub

За извикване на само едно копие на формата... трябва да се вмъкне:

If myForm Is Nothing Then

myForm = New Form2

End If


Сподели този отговор


Линк към този отговор
Сподели в други сайтове
А защо използваш версия 98 на студиото :help:

Само тази имам :yanim: Има ли някаква съществена разлика с другите?

Private Sub Button1_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles Button1.Click

Dim myForm As New Form2

myForm.Show()

End Sub

Супер :):help: :help:

За извикване на само едно копие на формата... трябва да се вмъкне:

If myForm Is Nothing Then

myForm = New Form2

End If

Това не го разбрах - с каква цел да го напиша? :wors:

Но без натискане на бутон. Например от комбото избирам стойност 3, а текстовото поле въвеждам 4, какво събитие трябва да генерирам, че веднага да се сметне резултата в другото поле (12)??? Искам да се смята докато съм още в първото текстово. т.е. ако там въведа 10 да получа в другото 30?

А идеи за това? ohmy.gif

Private Sub Comm1_Click()

Open "C:\Program Files\Microsoft Visual Studio\VB98\Razhod\zapis.txt" For Random As #1

Print (ама не ставааааа. искам да ми запише във файла всичко въведено в полетата до тук, но някъде нещо бъркам, защото незнам как да го накарам да ги запише. Как да ги вкарам в цикъл за запис? Иначе то може да записвам и txt1.text, txt2.text, но ако имам 200 записа малко трудно ще ги въведа едно по едно)

Dim myForm As New Form2

myForm.Show

Close

End Sub

Със записа във файл нищо не ми се получава sad.gif

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Private Sub Command1_Click()

If (Combo2.Text = " " And Combo1.Text = " " And Combo3.Text = " " And Text1.Text = " " And Check1.Value = 0 ) Then

MsgBox ("Не сте въвели данни. Опитайте отново")

Else: Open "C:\Program Files\Microsoft Visual Studio\VB98\Biblioteka\library.txt" For Append As #1

Print #1, Combo2.Text & " " & Combo1.Text & " " & Combo3.Text, Text1.Text, Check1.Value

Close

End If

Combo2.Text = " "

Combo1.Text = " "

Combo3.Text = " "

Text1.Text = " "

Check1.Value = 0

End Sub

Замисъла ми е ако не е въведено нищо в полетата да излиза съобщение без да се прави празен запис във файла. Обаче при стартиране на програмата ако направо натисна бутона за запис - записва ми празен стринг и така само ми пълни файла.

Ако направя реален запис, данните се записват във файла и полетата се изчистват за ново въвеждане. Ако след това натисна бутон за запис всичко си е нормално - изкарва ми съобщението без да прави запис на празния стринг ( който от своя страна не е много празен, защото записва една 0 )

Имате ли идеи как при стартиране и натискане на бутона да ми извежда съобщението, а не да прави запис :P

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Как се свързва програмата на бейсик с база данни? Не искам да записва данните във файл *.txt, а в някаква база данни(и да ги извежда после при натискане на бутон). Идеи? :)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Май си пиша сам :)

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

защо не използваш една база данни на Аксес ? ? ? по лесно по бързо и вече с готов интерфейс ?

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Добавете отговор

Можете да публикувате отговор сега и да се регистрирате по-късно. Ако имате регистрация, влезте в профила си за да публикувате от него.

Гост
Напишете отговор в тази тема...

×   Вмъкнахте текст, който съдържа форматиране.   Премахни форматирането на текста

  Разрешени са само 75 емотикони.

×   Съдържанието от линка беше вградено автоматично.   Премахни съдържанието и покажи само линк

×   Съдържанието, което сте написали преди беше възстановено..   Изтрий всичко

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Добави ново...