|
try here
http://www.vbaccelerator.com/home/VB/Code/vbMedia/Image_Processing/index.asp
|
|
|
|
|
|
I have to do something similar in file manger(like Norton Commander etc)in VB.Net and I need some free code for that cause I found big difficulties in building that.Anybody can help me?
|
|
|
|
|
Your going to have to be a bit more specific about what you're looking for. There's free code all over this site, but what do you need help with?
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Is there a reliable way to determine if any given path is on a local device, rather than a mapped or shared device? (I know I can scrape the string for C:, etc. but I want this to work even if the PC has several partitions.) Thanks.
Jerry
|
|
|
|
|
Jerry,
You could do somthing like this i suppose.
Imports System.Runtime.InteropServices
<DllImport("mpr.dll", SetLastError:=False, CharSet:=CharSet.Auto)> _
Friend Shared Function WNetGetUniversalName( _
ByVal lpLocalPath As String, _
ByVal dwInfoLevel As Int32, _
ByVal lpBuffer As IntPtr, _
ByRef lpBufferSize As Int32) As Int32
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim bufSize As Int32 = 2000
Dim bufPtr As IntPtr = Marshal.AllocHGlobal(bufSize)
Dim sMapPath As String = "Z:\"
Dim ret As Int32 = WNetGetUniversalName(sMapPath, 2, bufPtr, bufSize)
If ret = 0 Then
Debug.WriteLine("This is a Mapped Network Drive " & ret)
End If
If ret = 1200 Then
Debug.WriteLine("The specified device name is invalid. " & ret)
End If
If ret = 2250 Then
Debug.WriteLine("This network connection does not exist. " & ret)
End If
Marshal.FreeHGlobal(bufPtr)
End Sub
|
|
|
|
|
Dang, I hate when it does that.
<DllImport("mpr.dll", SetLastError:=False, CharSet:=CharSet.Auto)> _
Friend Shared Function WNetGetUniversalName( _
ByVal lpLocalPath As String, _
ByVal dwInfoLevel As Int32, _
ByVal lpBuffer As IntPtr, _
ByRef lpBufferSize As Int32) As Int32
End Function
|
|
|
|
|
I am currently working on an application that reads in a file of around 450 lines. Each line of the file can vary in length and I need to modify either the third line or the fourth line in the file. The value at these lines are of type string but are read in and converted to integers. Once I handle the integer I write it back out as a string. The problem is that apparently in VB or VB.Net a file that can be read and written to has to be opened in random mode but then requires that each line be a specific size. I really need to handle the lines as they vary in length. Is there a way to read and write to the same file while it is open in random or some other mode! Thanks for any help!
DC9Pilot
|
|
|
|
|
You've just found the one reason to can't use text files as random access databases.
What you're going to have to do is rewrite the ENTIRE file in order to make this change. The quick way to do it is to read in the entire file, line by line, into an array of strings. Make the changes you want to the array, then write the file back out, overwriting the file that was there.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Thanks Dave! I was afraid I'd have to do something like that.
|
|
|
|
|
I liked how the masktextbox in vb6 works. Is there anything similar to that in vb.net? I am pretty much trying to mask a phone number to make it
(###)###-####. Is this possible to do in vb.net?
This is what I am doing now:
txtHome.Text = Microsoft.VisualBasic.Left(strHome, 3) & "-" & Microsoft.VisualBasic.Mid(strHome, 4, 3) & "-" & Microsoft.VisualBasic.Right(strHome, 4) which produces ###-###-####. There has to be another way to do this. It is working this way but when I save back to the database, I have to unmask it(which I don't like). Please help.
Thanks
Beginner in ASP.Net and VB.Net
|
|
|
|
|
Well, there is no Masked Edit class in the .NET BCL. At least, not yet...
You can still use the Masked Edit control from VB6 though. If MSMASK32.OCX on your machine and registered, all you need to do is add it to the ToolBox.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Dave Kreskowiak wrote:
You can still use the Masked Edit control from VB6 though. If MSMASK32.OCX on your machine and registered, all you need to do is add it to the ToolBox.
I tried this and all seemed great but when I went to fill the masked edit control with text, it never displays any text. Is there something that I need to set or change in the control? The only thing I did was change the mask to (###)###-####, then filled it with text
txtNumber.Text = "1234567899". Nothing happens.
Any suggestions?
Thanks
|
|
|
|
|
That's because when you use the .Text property, the text entered must match the mask format exactly. If not, you won't see anything. You can't use the MaskedEdit control to format the data for you. You have to use the String.Format method for that.
Text Property (MaskedEdit Control)[^]
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Is there a way in vb.net code to find what the screen resolution on the clients machine is set to?
For example, I might want to place a form at a specific spot close to the bottom righthand side of the screen. To do this I change the location property. Unfortunately the bottom right corner changes depending on the screen size the client has setup or even changes to while using my app.
Any help is appreciated?
Lost in the vast sea of .NET
|
|
|
|
|
Check out the Screen class in the System.Windows.Forms namespace. It'll give you everything you need to get the dimensions you want. Just be aware that your application can be running on a multiple monitor desktop and must account for this. Use the PrimaryScreen property to return a Screen object that represents, obviously, the primary screen, the one most applications are displayerd on when launched.
An example:
' Retrieve the working rectangle from the Screen class
' using the PrimaryScreen and the WorkingArea properties.
Dim workingRectangle As System.Drawing.Rectangle = _
Screen.PrimaryScreen.WorkingArea
' Set the size of the form slightly less than size of
' working rectangle.
Me.Size = New System.Drawing.Size(workingRectangle.Width - 10, _
workingRectangle.Height - 10)
' Set the location so the entire form is visible.
Me.Location = New System.Drawing.Point(5, 5)
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
This worked great!!
Thanks!
Lost in the vast sea of .NET
|
|
|
|
|
well i need to set text for a combo and i dont want anyone else to be able to edit the text. Once some text has been selected the user can also be able to choose an item from the combo meaning i dont want the lock property. I've set the style to 0 and i can do the set text part but it is editable. When i set the combo style property to 2 then i cant set text in the combo. Any ideas what i am missing out on??
|
|
|
|
|
I'm confused... What exactly are you trying to do? A ComboBox, style = 2, would let you pick from the list, but not edit the text in the textbox. IIRC, you can set the text in the textbox through code, but only if the text matches an item in the list. So what's the goal here?
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
i need to select a particular text and the user should not be able to edit the combo box.
Thanks for the reply
|
|
|
|
|
FASTian wrote:
the user should not be able to edit the combo box
Then you'll have to make your selection in code and then set the .Enabled property to False . If you let the user make another selection from the dropdown of the combo, that selection will replace any text in the textbox portion of the combo. If you don't want the user to change that text, you either have to disable to combobox or handle the Changed event and, in the event handler, check to see if the .Text property is changed from what it is supposed to be and set it back if necessary.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Your explanation is a bit vague. But using a combo box is easy to construct. No one cannot edit a combo box. I created through a tutorial Customer Orders. This utilizes a combo box with a listing of companies, and updates the customer orders. Also includes a set of dropdown date calendars. These infomation are stored in an access database not sql server.
bravo659
|
|
|
|
|
ok maybe i am explaining this wrong. Here's the actual scenario:
1. We query the server about all the possible city names available and fills the combo box with all the names. Eg. AA,AB,AC and AD
2. When the customer enters a phone number we search the database and if the phone number exists then i just want the combo box to show the city that the matches the phone number for Eg. AB is the city the number matches to then AB should be selected in the combo box. If the number matches no city then we do nothing.
3. We also DONT want the customer to be able to edit the combo box field.
4. The customer can also SELECT a city himself if he wants to by selecting a value from the combo box.
anyways thanks for even lookin at this
|
|
|
|
|
Correct me if I'm wrong, but I think I know what you want:
You want to set a specific text into the combobox (from one of the items in the list) through code and you don't want users to edit the combobox text.
There are several ways you can do this:
1. Use this function to get and set the index of the item (instead of the text) you want to select in the combobox while keeping your combobox style to 2:
Public Function GetComboBoxIndex(hWnd As Long, SearchKey As String, Optional FindExactMatch As Boolean = True) As Integer
'Parameters:
' hWnd - the handle to the ComboBox control. Usage: Combo1.hWnd
' SearchKey - item that you would like to search for. Can be any string - case doesn't matter when searching
' Optional FindExactMatch - Default is True. Pass False to find a partial match
'Return:
' Returns the index of the found match. If the match is not found, -1 is returned
'Usage:
' Combo1.ListIndex = GetComboBoxIndex(Combo1.hWnd, "Test Item")
' Combo1.ListIndex = GetComboBoxIndex(Combo1.hWnd, "Test Item", False)
If FindExactMatch Then
GetComboBoxIndex = CInt(SendMessage(hWnd, CB_FINDSTRINGEXACT, -1, ByVal SearchKey))
Else
GetComboBoxIndex = CInt(SendMessage(hWnd, CB_FINDSTRING, -1, ByVal SearchKey))
End If
End Function
2. Similar to #1, you can iterate through the combobox item and compare the text to get the index, but this is inefficient.
3. You can implement the AutoFill function on the KeyPress event and IsComboboxItemValid on the Validate event for the combobox. This enables user to type into the combobox (using style 0) but also makes sure that whatever they type will be in the items list.
Public Sub AutoFillCombobox(ByRef comboBox As comboBox, ByRef KeyAscii As Integer)
Dim intIndex As Integer
Dim intRemainder As Integer
Dim strFullText As String
Dim strPartialText As String
If comboBox.Locked Then
KeyAscii = 0
Exit Sub
End If
If KeyAscii >= 33 And KeyAscii <= 126 Then
comboBox.SelText = Chr(KeyAscii)
strPartialText = comboBox.Text
intIndex = GetComboBoxIndex(comboBox.hWnd, strPartialText, False)
If intIndex > -1 Then
strFullText = comboBox.List(intIndex)
intRemainder = Len(strFullText) - Len(strPartialText)
If intRemainder > 0 Then
comboBox.SelStart = Len(comboBox.Text)
comboBox.SelText = Right(strFullText, intRemainder)
comboBox.SelStart = Len(strPartialText)
comboBox.SelLength = Len(strFullText) - Len(strPartialText)
End If
End If
KeyAscii = 0
End If
End Sub
Public Function IsComboboxItemValid(ByRef comboBox As comboBox, Optional ByVal blnPrompt As Boolean = False, Optional ByRef Cancel As Boolean) As Boolean
Dim intIndex As Integer
intIndex = -1
If IsComboboxItemListed(comboBox, intIndex) Then
comboBox.ListIndex = intIndex
IsComboboxItemValid = True
Else
IsComboboxItemValid = False
Cancel = True
If blnPrompt Then
MsgBox "Item is not in the list." & vbCrLf & "Please select an item from the list.", vbInformation, "Item Not Available"
End If
End If
End Function
I hope one of those can help you.
Cheers!
|
|
|
|
|
THANKS !!
this is what i've been looking for. Sorry guys i guess was being a bit vague in the beginning . anyway the only thing missing is the IsComboboxItemListed(comboBox, intIndex) function and defination CB_FINDSTRINGEXACT i know this is kinda stupid to ask for everything but am a newbie to VB and this is probably the first thing i got stuck on in VB.
Thanks for the help dude..
really appreciate it
|
|
|
|