|
AA matrix is a 2d object so it needs to be a grayscale image. And usually, it is most convenient to do a byte[,] msatrix since its already on that form.
|
|
|
|
|
I do not code for a living, and infrequently use VB.net under Visual Studio.
When starting a new project, the statup up form name is Form1 in vb.net (this is under VS 2022 community).
If I leave the form name as Form1, then no problems when I build the project. But it seems (and this could be user error on my part), if I change the form name to something else like frmMain, then when I build the project, VS provides compiler errors such as:
Error BC30420 'Sub Main' was not found in 'ModuleTest2.frmMain'
or
Warning BC40046 class 'frmMain' and partial class 'frmMain' conflict in namespace 'Moduletest', but are being merged because one of them is declared partial.
So apparently I am doing something wrong but it seems to me that changing the first form name to something other than Form1 should not cause such a fuss.
Input?
|
|
|
|
|
You are probably changing it outside of Visual Studio. If you right click on the form name in Solution Explorer in Visual Studio and select "Rename", then VS will change all the other references to that name correctly.
|
|
|
|
|
How are you "changing the name" - might sound like a silly question but you'd be surprised at some of the things I've seen
Edit: And when - as in "immediately" or have you already written code that refers to it?
|
|
|
|
|
Using Visual Studio Community 2022 17.1.1
1) Select Visual Basic/desktop/windows form/.NET 6
project opens with Form1 as default
no code, no changes, Build Solution, compiles with no errors
2) Select Visual Basic/desktop/windows form/.NET 6
project opens with Form1 as default
using the Properties window, change the name of Form1 to frmMain, save all files
no code, no other changes
Build Solution = BC30451 'Form1' is not declared. It may be inaccessible due to its protection level
So the question is, if I change the name of a form, do I need to do something else such that VS/VB will "update" everything to acknowledge Form1 has been renamed frmMain?
|
|
|
|
|
Nope. You do not use the Properties window to change the name of a form.
Usually, you either click on the file with the form name and hit F2 to change the name of the file (which VS will happily change the name of the class for you to go along with it), or you click on the class name and hit F2 to rename the class (and all of it's other locations.)
|
|
|
|
|
Unfortunately, when I create a new project, let Form1 come up and then click on Form1.vb under Solution Explorer, click on Form1.vb, press F2, rename Form1 to frmMain, and then build, results in exactly the same build error.
modified 9-Mar-22 14:50pm.
|
|
|
|
|
Well, something's going on that isn't normal.
You can try to get around it by double-clicking "My Project" in Solution Explorer, click the Application tab, then find the "Startup object" dropdown. Click on that and find the name of your startup form and click it, then recompile.
Are there any updates to Visual Studio and Windows that haven't been installed yet?
|
|
|
|
|
"Well, something's going on that isn't normal."
and hence the title of the post.
Going to the application tab and selecting Form1 as the startup object, compiling, and then changing the form name in Solution Explorer allowed compilation without an error.
However, I will note that after changing the form name from Form1 to frmMain as above, in the application tab/startup object, it is still "Form1" and not "frmMain". And while the form name in Solution Explorer is "frmMain", when you click on the form and look at Properties, it is still "Form1"
My Win10 pc and VS are both up to date.
Now here is where it gets even more interesting. Once again start a new project, VB/windows form/desktop/,NET 6, let the solution come up with Form1. Go to Project, Add form, and add a new form. At this time you can call it "frmMain" when it is added. Then go to Solution Explorer, select Form1 and delete it. So at this point, Form1 is gone, and only frmMain remains. Go to application tab/startup and select frmMain as the startup object. Build the solution and then you get:
Error BC30456 'Form1' is not a member of 'test6'.
Now VS is throwing errors on a "form" that has been deleted from the solution.
So I know there are work arounds, but the (somewhat rhetorical) question is: why doesn't VS automatically update all references in the solution when a form's name is changed/deleted?
modified 9-Mar-22 20:22pm.
|
|
|
|
|
Something is broken. I'd try uninstall VS and .NET 6 and reinstalling.
|
|
|
|
|
I gave you the answer yesterday; did you try it?
|
|
|
|
|
Yes I did.
Following the same steps, create a desktop VB windows form .NET 6 project, let the project come up with the standard Form1, then right click on Form1.vb in Solution Explorer, rename as frmMain.vb results in the same error message when you build it after the name change.
|
|
|
|
|
I have used that method on numerous occasions but never had a problem. I suggest you report it to Microsoft.
|
|
|
|
|
Try renaming Form1 before changing the Startup in the project properties.
OR------------------------------
I have also added a form under the form name I wanted (Like Title), again doing this before changing the Startup in the project properties, Save the project exit VS, open VS and load the project. When you go back to Project the drop-down should show the form you added. Select it, return to Solution Explorer and then delete Form1 properties or at least Exclude it from the project.
Both of these have worked for me.
ed
|
|
|
|
|
hi
i need program in visual basic 6 to draw a tooth of spur gear using involute and trochoid curve
|
|
|
|
|
OK, so you're writing this app?
This is not a "for hire" site.
|
|
|
|
|
Can I suggest that you do it in something else other than VB6. Literally anything else. Most people who used to code in VB6 are now long retired - much like that software.
|
|
|
|
|
It is not possible to use anything other than Visual Basic because my graduation project requires drawing in Vb 6
|
|
|
|
|
May I ask which college you are attending? They are teaching a language that went out of support decades ago. I hope they are also teaching other languages as part of the course
|
|
|
|
|
Member 15558264 wrote: graduation project requires drawing in Vb 6 You have got to be joking, if not then you have basically wasted your education time on a completely useless language. It might help to name and shame the college/course teaching such rubbish.
Never underestimate the power of human stupidity -
RAH
I'm old. I know stuff - JSOP
|
|
|
|
|
Not So, Not So!
There are many of out here supporting Legacy systems!
ed
|
|
|
|
|
hello everyone, I have the following problem, it happens that I want to close an example application: Notepad, but the code only works for me if I have the form in the foreground if it is minized, do not close the application, I want to close the application no matter what window I am using , this is my code.
If e.KeyCode = Keys.Escape Then
KilleInventory()
End If
Private Sub KilleInventory()
Dim processesByName() As Process = Process.GetProcessesByName("Inventory")
Dim array() As Process = processesByName
For Each process As Process In array
process.Kill()
Next process
End Sub
modified 3-Mar-22 13:18pm.
|
|
|
|
|
Well one reason it's not closing Notepad is that you're calling GetProcessesByName("Inventory").
The difficult we do right away...
...the impossible takes slightly longer.
|
|
|
|
|
Notepad is an example, the name of the application is called Inventory, the one I want to close
|
|
|
|
|
Use the name of the executable you're trying to stop, without the ".exe" extension.
|
|
|
|