|
There's a couple of things... You're help is awesome and easy to understand.
However, since this is still a beginner VB class there are some things we have not been taught to use yet such as: Dim intNumberTix As Long = CLng(Me.txtNumberOfTickets.Text)
have no idea what Long and CLng is.. and If lstSeats.SelectedItems.Count = 0 Then, we have not done counts yet. So while I generally understand what this means:
If intSeatType = 0 Then
lngTotalCost = SeasonTicketsFindCost(lstSeats.SelectedIndex, _
CInt(Me.txtNumberOfTickets.Text))
Else
lngTotalCost = SingleTicketsFindCost(lstSeats.SelectedIndex, _
CInt(Me.txtNumberOfTickets.Text))
End If
lblCost.Text = String.Format("{0:C}",lngTotalCost)
I have never seen lng or Long as a variable type. I can however take what you have given me and put it into what we have learned.
Sometimes in the introductory courses they kind of force you to use certain things. Such as the way the splash screen is timed. I am glad though that I have gotten feedback from others who have more experience so that I do not miss these lessons. Hopefully classes will get to them so I don't graduate with completely wrong information. Thank you again for your help. Do you want me to post working code when I finish it?
|
|
|
|
|
Hmm...that's curious...you were taught about Decimals before Longs? A Long is just a larger Integer. Decimal is definitely not a standard type. The 4 standard VB numeric types are Integer, Long, Float, and Double. An Int is only good up to 32,767. A Long goes beyond that. CLng is just a conversion method. There are many of these...CInt, CDec, CLng, CDbl...So, if you pass in a string value to any of them, it will try to return whatever number is in that string in the selected type. Or it you pass an Integer into CDbl, it will return that Integer as a Double.
As far as the SelectedItems.Count, that is just a property within the ListBox. I assume that since you are allowed to use a ListBox, you should be allowed to use any of its methods. That is just one of them.
But, I know about profs not wanting you to skip ahead. In one of my classes, I read ahead and found the switch in C++ (the same as VB's Select) and used it instead of a series of for loops and was told that I wasn't to use something we hadn't been taught yet.
And you may not feel like you need one, but when I was in college, I was a tutor and I hope that it helped the people that I tutored. Normally, schools provide the service free of charge and it can be really helpful to have someone who's gotten further helping you understand how to structure a program and even giving hints on what has worked for them and what hasn't.
|
|
|
|
|
William,
Thank you very much for your insights and help. i do not think this particular professor would knock me for going ahead but I didn't want to try him. When I got his reveiw of my homework he said, "There were only two problems with {my} code which were giving {me} problems. The first problem is {I} forgot to set the number of tickets based on the entered value for the number of tickets. The other problem is {my} line for converting the value to string {....} Should be:
'display cost.
lblCost.txt = decTotalCost.ToString
"Once {he} fixed those things the program worked great."
Now, I agree with you that there was just too much code. But in an introductory class they are looking that mainly the program works and that the UI does what it is supposed to do. I was surprised that I got an A but pretty happy.
The Decimal thing; as you can see my prof also used decimal, the program assignment as written in the book, wants the total cost to be in the format of $8888.00. So we were kind of forced into the dec format; I found it annoying as well since it added to the code and also made it confusing when working with both integers and decimals.
Anyway, I found all of you expertise helpful and if I could afford to pay you to tutor; I would see if you were up for the challenge; however like most students I am poooooor. The university at this time does not have VB tutors, but as soon as they do, they will let me know.
Thank you again. I will definitely be back!! This site is awesome as a resource and for help. Oh, and we're learning arrays this unit so I may need the help ;0
Thanks again, looking forward to talking with you again.
|
|
|
|
|
BTW...the simple answer is
#1) You never set intNumberTix
#2) You use intSeatType twice meaning two different things...first the seat type (lower, box, etc...), then the ticket type (season vs. single)
intSeatType = ValidateSeatSelection(blnSeatTypeIsSelected, strSelectedSeat)
If (blnNumberTixIsValid And blnSeatTypeIsSelected) Then
intSeatType = Me.cboTicketType.SelectedIndex
Select Case intSeatType
Case 0
decTotalCost = SeasonTicketsFindCost(intSeatType, _
intNumberTix)
Case 1
decTotalCost = SingleTicketsFindCost(intSeatType, _
intNumberTix)
End Select
|
|
|
|
|
Hi, i'm having a problem on put a menustrip on a mdi children, when i load my project, the "bar" appears, but the options(itens) doesn't, does anyone knows what is the problem? thank you
Marcus Abrahão
|
|
|
|
|
do you have an options menu on the parent form? if so they more than likely have merged
Marc Clifton wrote: That has nothing to do with VB. - Oh crap. I just defended VB!
|
|
|
|
|
wow, thank you very much... i just put the allowmerge = false and solved
|
|
|
|
|
Hi, dear all,
I was past a project created years ago and will do some change on it.
From its document it said this project is ceated Microsoft development environment (Windows and Visual Basic), here VB should be VB6.0.
But I saw some files with extension .scc, I search internet and know this file is from Visual SourceSafe.
I didn't install Visual SourceSafe in my computer, and I will work on this project alone. I have no idea what should I do now. What's the relationship of VSS and VB? Do I need to install VSS? Should I work on the project in VB environment or .NET or others?
Thanks!
|
|
|
|
|
By the way, I already use PVCS as source control tool. Thansk!
|
|
|
|
|
I have never used VSS, but image the files will just be used to keep track of what each file status is.
I would imagine that you can carry on working with the project and just delete/ignore the files. Certainly this is what i have done with SVN projects.
What to do is take a copy of the original files, work on the copy and see what happens, if it all goes wrong just revert back.
|
|
|
|
|
Dave,
Thank you for reply.
VSS is just for source control, right? So I can forget about it and continue work on the project in VB6, am I right?
The original project create setup file with some script file (extension .wse), does the setup file creation have relationship with VSS?
Thanks!
|
|
|
|
|
Andraw Tang wrote: VSS is just for source control, right? So I can forget about it and continue work on the project in VB6, am I right?
As far as i know, yes, just carry on using VB6 on the project files.
Andraw Tang wrote: The original project create setup file with some script file (extension .wse), does the setup file creation have relationship with VSS?
That i do not know, are wse files not just plaintext? can you not look at the files content and see what is within?
|
|
|
|
|
Hi, Dave,
WSE file contains something like the following:
Document Type: WSE
item: Global
Version=8.1
Title=VB6 Runtime Installation
Title French=VB6 Runtime Installation
Title German=VB6 Runtime Installation
Title Spanish=VB6 Runtime Installation
Title Italian=VB6 Runtime Installation
Flags=00000100
Languages=65 0 0 66 67 0 68 0 69 0 0 0 0 0 0 0
Copy Default=1
Japanese Font Name=MS Gothic
Japanese Font Size=10
Progress Bar DLL=%_WISE_%\Progress\WIZ%_EXE_OS_TYPE_%.DLL
Start Gradient=0 0 255
End Gradient=0 0 0
Windows Flags=00000100000000110010110000011000
Log Pathname=%MAINDIR%\INSTALL.LOG
Message Font=MS Sans Serif
Font Size=8
Pages Modified=00000001000000000000000000000000
Disk Filename=SETUP
Patch Flags=0000000000000001
Patch Threshold=85
Patch Memory=4000
FTP Cluster Size=20
Per-User Version ID=1
Dialogs Version=6
Crystal Format=10111100101100000010001001001001
Step View=Properties
end
item: Remark
end
remarked item: If/While Statement
Value=UCase$(Left$(CMDLINE,2)) <> "/T"
Flags=00001101
end
remarked item: Remark
Text=System Must have NT 4.0+ or Win9x running to install software properly.
end
remarked item: Check Configuration
Message=This VB6 application requires Windows 95 or NT 4.0 to run. Please install this software on another computer or upgrade your operating system.
Title=Incompatible Operating System
Title French=Système d'exploitation incompatible
Title German=Inkompatibles Betriebssystem
Title Portuguese=Sistema operativo incompatível
Title Spanish=Sistema Operativo Incompatible
Title Italian=Sistema operativo incompatibile
Title Danish=Inkompatibelt Operativsystem
Title Dutch=Niet-compatibel systeem
Title Norwegian=Ikke kompatibelt operativsystem.
Title Swedish=Inkompatibelt operativsystem
Flags=01011011
end
I don't know what's the meaning.
I just wander do we need to create script file to create setup file? Do the wse file check some preconditon for installation?
Thanks!
|
|
|
|
|
I think the wse file is a project file for the installation project done with some version of the Wise Installation System or Wise for Windows Installer (probably the first). I would guess 8.1 is the Wise version used.
From what I can see, it checks for two things:
"System Must have NT 4.0+ or Win9x running to install software properly."
and
"This VB6 application requires Windows 95 or NT 4.0 to run. Please install this software on another computer or upgrade your operating system."
If I were you I'd clean up the project and remove the vss and wse files and package the whole shebang using a more contemporary installer.
|
|
|
|
|
John,
Thank you for your reply.
Yes. the wse file was created using Wise InstallMaster 8.1.
The reason I want to resue these files is that this project is a large one with more than 1000 files and more than 10 third party tool and all these tools need to be registered while install, and I just do a little change on it, like logo, image, application name, license info.... If I restart by a new tool, I am afraid I will lose some logic.
But I also have no idea how to modify the existing wse file, can you give me some instruction?
Thanks!
|
|
|
|
|
Hi guys, how can i check if a PC has Wake on lan enabled??
Thank you so much
|
|
|
|
|
Is this in anyway related to VB?
By posting in this forum, are you implying that you want to be able to check using a VB application if WOL is enabled, or do you just want to know i.e. using the control panel etc, if it is enabled?
|
|
|
|
|
Yes, i want to know how to check this using vb
|
|
|
|
|
Ok, i think you will need to do some further research, but this can be both checked and set using VB and WMI.
The link below has a script which can perform this from the command line;
http://forums.whirlpool.net.au/forum-replies-archive.cfm/919407.html[^]
What you will need to do is look for other examples (there are some on CP) on making WMI calls from VB, and then translate the script version calls to suit.
Happy problem solving!
|
|
|
|
|
Hi,
We are in the process of building a new enterprise application, that would comprise of an Oracle database, and a VB.NET application. Now my request to you all is to suggest the optimal architecture, in terms of technology, stability, maintenance, etc, bearing in mind that we would like to have a multi-tier application, with a thin client, and 1 to n business/persistence layers.
The application would be used by users who might be geographically separated.
Would appreciate your inputs on:
Winforms Vs ASP.NET?
Communication,
Data persistence,
Performance,
Any other criterion that you might consider important.
Your inputs would be highly appreciated.
Cheers/RB
|
|
|
|
|
RajeevBhatt wrote: Winforms Vs ASP.NET?
RajeevBhatt wrote: Communication
RajeevBhatt wrote: Performance
Windows forms (generally) give a faster, and more direct interactive experience to the user. Development will be easier. You will not be dependent on internet connections (or quality thereof)
RajeevBhatt wrote: The application would be used by users who might be geographically separated.
This is the key question, and I warmly suggest that you get a more committed answer from the customer.
RajeevBhatt wrote: Data persistence
In the case of "geographically separated users" ASP.NET (a web application) is much much easier for the application / data administrator(s), and will likely be much cheaper to maintain, and develop in the long run. System updates / patches / fixes go live instantly for all users, and all data returned is "live" at all times.
RajeevBhatt wrote: Any other criterion that you might consider important.
You should be asking the customer this.
(By the way, "customer" can also mean "your boss".)
My advice is free, and you may get what you paid for.
|
|
|
|
|
It is very, very rude to post the same question in more than one forum!
For future reference, decide which forum most suits your question and post it there and only there.
In this case either 'General Database' or 'Design and Architecture' would seem most appropriate.
Henry Minute
Do not read medical books! You could die of a misprint. - Mark Twain
Girl: (staring) "Why do you need an icy cucumber?"
“I want to report a fraud. The government is lying to us all.”
|
|
|
|
|
I am using vb.net 2003 for a stand alone windows program. I access an Access 2002 database file via Jet 4.0 and OleDbDataAdapter.
The program is like a "check book" for commercial fishermen to track their landings in relation to the amount of "quota" that they have been assigned. The program is structured so a fisherman can enter multiple boat names and track each one seperately. To work on a particular boats account, the fisherman would select a boat name from a drop down list. The boat name is then captured and assigned the string variable name of "xid" and in a Module have this code: <pre>Public xid as String</pre>
I used the DataAdapter Configuration Wizard to setup the data connection and assign the DataAdapter and DataSet. I went into Wizard generated code and manually entered a WHERE clause to filter the data for the selected boat. Doing this the program works fine. The code that works is: <pre>... WHERE [Boat Name] = '" & xid & "'</pre> .
However, if I return to the Designer view I get an error message: The variable 'xid' is either undeclared or was never assigned. And the entire SELECT statement is erased.
If I try letting the Wizard generate the WHERE clause when I enter: <pre>... WHERE [Boat Name] = '" & xid & "'</pre>, the code that is generated is has double double quotas as: <pre>... WHERE [Boat Name] = '"" & xid & ""'</pre> , and this does not show data on my form.
I have gone through every possible combination of single quote and double quotes and can not get the wizard to produce the syntax that works. And if I manually edit the wizard generated code the program works, but I can not return to the Designer view.
Does any one have a suggestion or solution?
|
|
|
|
|
The problem is that you are trying to apply Access techniques on vb.net.
The wizard does not, and will not ever understand that WHERE [Boat Name] = '" & xid & "' means that you want to use a variable.
Try writing the sql sentence in the wizard, and apply your variable like so: WHERE [Boat Name] = @xid . Then, in your vb.net code, before you call the DataAdapter.Fill method pass your variable's value to the adapter's parameter collection.
Something like: DataAdapter.SelectCommand.Parameters.Add("@xid", NVarChar).Value = xid (you probably have to check for the correct syntax, but something along these lines anyway)
As an added bonus you will be using the safe way to use parameterized queries (much less risk of an sql injection attack).
My advice is free, and you may get what you paid for.
|
|
|
|
|
Thanks for the reply. I would like to get this to work properly. This is my first attempt at programing with vb.net and using a database. In the past all of my projects used text files for input an writing. This is very different.
I made the change to the WHERE clause in the Wizard to <pre>... WHERE [Boat Name] = @xid</pre>
Now in my form I have this code:
<pre>OleDbDataAdapter1.SelectCommand.Parameters.Add("@xid", NVarChar).Value = xid
OleDbDataAdapter1.Fill(QuotaPounds1.Balance)</pre>
NVarChar is underlined with the explanation that it is not declared. If I edit this to VarChar it remains underlined with the explanation that it is not declared. If I make it Char, it is still underline but now the explanation is that it is "a Type and so is not a valid expression". I thought that the value in that spot was supposed to be a "Type".
Any guidance you can provide on the syntax here would be most appreciated.
|
|
|
|
|