🔒 Closed Patulong sa combo box

Status
Not open for further replies.

Percher

Fanatic
Gumagawa po ako ng isang program using VB 6.0 as an exercise.

Since medyo noob pa medyo nahihirapan ako sa combo box.
Eto ung Source code ng ginagawa ko:

________________________________________________________________________________________
Option Explicit
Dim day, year, complete_date As String
Dim leap, yr As Integer
________________________________________________________________________________________
Private Sub cmdDisplay_Click()
complete_date = MsgBox(cboMonth.Text + " " + cboDay.Text + ", " + cboYear, vbInformation, "Date")
End Sub
________________________________________________________________________________________
Private Sub Form_Load()
'Month--------------------------------------------------------------'
cboMonth.AddItem "January"
cboMonth.AddItem "February"
cboMonth.AddItem "March"
cboMonth.AddItem "April"
cboMonth.AddItem "May"
cboMonth.AddItem "June"
cboMonth.AddItem "July"
cboMonth.AddItem "August"
cboMonth.AddItem "September"
cboMonth.AddItem "November"
cboMonth.AddItem "October"
cboMonth.AddItem "December"

'Day------------------------------------------------------------------'

yr = Val(cboYear.Text)
leap = yr Mod 4

Select Case cboMonth.Text
Case "February"
If leap = 0 Then
day = 1
Do Until day = 29
day = day + 1
cboDay.AddItem day
Loop
Else
Do Until day = 28
day = day + 1
cboDay.AddItem day
Loop
End If
End Select

Do Until day = 31
day = day + 1
cboDay.AddItem day
Loop

'Year-----------------------------------------------------------------'

year = 1990

Do Until year = 2030
year = year + 1
cboYear.AddItem year
Loop
End Sub
________________________________________________________________________________________


Ano yung gusto kong makuhang output:
1.) Program sya na mag display ng selected date sa message box.
2.) Pag na select ung "February" sa Combo Box na "Month", ung list ng days sa Combo Box na "Day" ay magiging up to 28, If leap year magiging 29.

Logical Error so far:
Kahit piliin ung "February" hindi sya nagiging 28, same pag pumili ng leap year - hindi sya nagiging 29.

Question:
Hindi po ba narerecognize ung value na na-select sa combo box, kung gagamitin sa isang conditional statement?

TIA
 

Attachments

  • vb.webp
    vb.webp
    77.3 KB · Views: 30
Sir yung Mod po ung token ng modulus operator sa VB 6.0
Yung % pang Java at C,C++ lang po yata.

Thanks po sa reply
Nagsearch ako hehe di nga pwede, di ako familiar sa vb 6 masyado sensya na.
Tingin ko sa event yan, nasa form load event siya, Yung unang nasa list sa combo box ng month nasa January. Kaya hindi machecheck yung select statement niyo Ts.

Try mo po yung Click event sa CboMonth na combo box.

Kahit yung code block lang ng Days yung ilagay mo sa Click event ok na yun.
 
Fix na mga days months except february. Gawin mo calculate the leap year. Every 4 years ang leap year ;)

Code na sana yan sira pa laptop ko. Sa april 6 ko pa siya ma rerepair. ;)
 
May kulang pa pala, dapat sakop ng select case statement yung para sa normal months. Dapat naka case else block yun.
 
haha oo nga po fixed na po ung sa ibang months feb lang talaga problem ko, lol baka kasi single pa din ako kaya :V

haha .... anyways kidding aside ung combo box diba para syang text box kaso may dropdown (ung value na mapipili sa drop down ang magiging text value ng combo box). it's either pwede mong i set na i type na lang or fixed na ung mga choices sa drop down - so inassume ko na pwede na ring gamitin ung value na "February" sa isang conditional statement as a basis for condition parang ganito:

If cboMonth.Text = "February" then
Do Until day = 28
day = day + 1
cboDay.AddItem day
Loop

pero hindi pla pwede. yun lang talaga yung problem ko.
Wala rin akong matinong sagot na makuha sa net.
 
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int day;
comboBox2.Items.Clear();
comboBox2.Text = "";
if (comboBox1.SelectedIndex == 0)
{
for (day = 1; day <= 31; day++)
{
comboBox2.Items.Add(day);
}
}

if (comboBox1.SelectedIndex == 1)
{
for (day = 1; day <= 28; day++)
{
comboBox2.Items.Add(day);
}
}
}
 
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
int day;
comboBox2.Items.Clear();
comboBox2.Text = "";
if (comboBox1.SelectedIndex == 0)
{
for (day = 1; day <= 31; day++)
{
comboBox2.Items.Add(day);
}
}

if (comboBox1.SelectedIndex == 1)
{
for (day = 1; day <= 28; day++)
{
comboBox2.Items.Add(day);
}
}
}

thanks po sa reply pero di naman po pang VB yan eeh :V

Event lang po problema, promise.

nakuha ko na sir thanks sa advice, event nga po

since sa form_load ko siya nilalagay na iignore talaga ung value ng combobox na month:

eto na po ung tamang source code:

______________________________________________________________________________________
Private Sub cboMonth_Click()
yr = Val(cboYear.Text)
leap = yr Mod 4

If cboMonth.Text = "February" Then
Do Until day = 28
day = day + 1
cboDay.AddItem day
Loop
ElseIf cboMonth.Text = "February" And leap = 0 Then
Do Until day = 29
day = day + 1
cboDay.AddItem day
Loop
Else
Do Until day = 31
day = day + 1
cboDay.AddItem day
Loop

End If
End Sub
______________________________________________________________________________________

since gusto kong mabago ung sa combobox day pag nagselect sa month, sa combobox month ko nilagay ung block ng code - gumana na siya :)

thanks sir
 
Status
Not open for further replies.

About this Thread

  • 11
    Replies
  • 861
    Views
  • 4
    Participants
Last reply from:
Percher

Trending Topics

Online now

Members online
1,055
Guests online
1,191
Total visitors
2,246

Forum statistics

Threads
2,274,053
Posts
28,953,385
Members
1,235,036
Latest member
chris_1234567
Back
Top