|
I had tried this
shaynoy wrote: If e.CloseReason = CloseReason.UserClosing Then
e.Cancel = True
End If
In both the case "Me.close" and close from control box... the control come in the above condition only..
|
|
|
|
|
What about this:
Private _userClosed as Boolean = false
Public Sub SomeMethod()
_userClosed = true
Me.Close()
End Sub
Private sub Form_Closing(sender as object, e as EventArgs)
If (_userClosed) then
'-do what you want
Else
'-do what you want
End If
End Sub
Mike Lasseter
|
|
|
|
|
just use an extra variable that you set before the me.close statement then inside the form_closing event unless that variable is set.... e.cancel =true and exit sub
'Never argue with an idiot; they'll drag you down to their level and beat you with experience.' ~ anonymous
'Life's real failure is when you do not realize how close you were to success when you gave up.' ~ anonymous
|
|
|
|
|
You can also disable the close button of the form:
Private Declare Function RemoveMenu Lib "user32" (ByVal hMenu As IntPtr, ByVal nPosition As Integer, ByVal wFlags As Long) As IntPtr
Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As IntPtr, ByVal bRevert As Boolean) As IntPtr
Private Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As IntPtr) As Integer
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As IntPtr) As Boolean
Private Const MF_BYPOSITION = &H400
Private Const MF_REMOVE = &H1000
Private Const MF_DISABLED = &H2
Public Sub DisableCloseButton(ByVal hwnd As IntPtr)
Dim hMenu As IntPtr
Dim menuItemCount As Integer
hMenu = GetSystemMenu(hwnd, False)
menuItemCount = GetMenuItemCount(hMenu)
Call RemoveMenu(hMenu, menuItemCount - 1, MF_DISABLED Or MF_BYPOSITION)
Call RemoveMenu(hMenu, menuItemCount - 2, MF_DISABLED Or MF_BYPOSITION)
Call DrawMenuBar(hwnd)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
DisableCloseButton(Handle)
End Sub
Shay Noy
|
|
|
|
|
|
Hi I am trying to make live Broadcast program using video cam which is attached to my laptop. I am relatvely new to this windows Media Encoder SDK. I found on the net this can be use to make the live broadcast program. Is there anyone familiar with those technology? Thanks a million
|
|
|
|
|
Do a seach on CodeProject for web cam. That might be able to help you.
Regards,
Thomas Stockwell
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
Visit my homepage Oracle Studios[ ^]
|
|
|
|
|
As part of a presentation software, I decided to write a custom control that provides cool text effects (like in powerpoint 2007). To support transparency, I used Bob Powell's code. Everything is fine in the designer, but when I try to animate the control, it flickers a lot. Double buffering just gives it a black background. Can anyone help me remove the flicker?
The code for the class:
Imports System.Drawing.Drawing2D
Public Class Text2007
Inherits System.Windows.Forms.UserControl
Protected Overrides ReadOnly Property CreateParams() As CreateParams
Get
Dim cp As CreateParams = MyBase.CreateParams
cp.ExStyle = cp.ExStyle Or &H20
Return cp
End Get
End Property
Protected Overrides Sub OnPaintBackground(ByVal e As PaintEventArgs)
End Sub
Protected Sub InvalidateEx()
If (Parent Is Nothing) Then
Exit Sub
Else
Dim rc As New Rectangle(Location, Size)
Parent.Invalidate(rc, True)
End If
End Sub
Protected Overrides Sub OnMove(ByVal e As EventArgs)
Me.InvalidateEx()
End Sub
Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
Dim bm As New Bitmap(CInt(Me.ClientSize.Width / 5), CInt(Me.ClientSize.Height / 5))
Dim pth As New GraphicsPath()
pth.AddString(Me.Text, New FontFamily("Verdana"), CInt(FontStyle.Regular), 100, New Point(20, 20), StringFormat.GenericTypographic)
Dim h As Graphics = Graphics.FromImage(bm)
Dim mx As New Matrix(1.0F / 5, 0, 0, 1.0F / 5, -(1.0F / 5), -(1.0F / 5))
h.SmoothingMode = SmoothingMode.AntiAlias
h.Transform = mx
Dim p As New Pen(Color.Yellow, 3)
h.DrawPath(p, pth)
h.FillPath(Brushes.Yellow, pth)
h.Dispose()
e.Graphics.Transform = New Matrix(1, 0, 0, 1, 50, 50)
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias
e.Graphics.InterpolationMode = InterpolationMode.HighQualityBicubic
e.Graphics.DrawImage(bm, ClientRectangle, 0, 0, bm.Width, bm.Height, GraphicsUnit.Pixel)
e.Graphics.FillPath(Brushes.Black, pth)
pth.Dispose()
End Sub
Public Sub pInvalidate()
Me.InvalidateEx()
End Sub
End Class
~ Soumya92
|
|
|
|
|
Hi,
I want to open files (such as .xls, .htm, .pdf)
in the VB 6.0 page.
Can any one please help me.
Ranjan
|
|
|
|
|
try to use the ole object
Shay Noy
|
|
|
|
|
while i try to insert row by
Sheet.Rows.Insert(Shift:=Excel.XlDirection.xlDown) i get error is
To prevent possible loss of data, Microsoft Office Excel cannot shift nonblank cells off the worksheet.
Try to locate the last nonblank cell by pressing CTRL+END, and delete or clear all in cells between the last cell and the end of your data. Then select cell A1 and save your workbook to reset the last cell used.
Or, you can move the data to a new location and try again.
so please help me how insert row
Hitesh sojitra
|
|
|
|
|
hitesh sojitra wrote: while i try to insert row by
Sheet.Rows.Insert(Shift:=Excel.XlDirection.xlDown)
This is because you have not selected/told excel where to insert new Row. It should be something like this.
Sheet1.Rows("1:1").Insert Shift:=Excel.XlDirection.xlDown
The code above will add new row before cell A1 so everything in row 1 will move to row 2.
- Stop thinking in terms of limitations and start thinking in terms of possibilities -
|
|
|
|
|
Thanks a lot it's working
Hitesh sojitra
|
|
|
|
|
one more quiry please
if i wants insert 3 row after A5 than it is (5:3) ? or any thing else?
Hitesh sojitra
|
|
|
|
|
thanks i got it..............
Hitesh sojitra
|
|
|
|
|
hi
i am using data binding and this is my code
Imports System.Drawing.Printing<br />
<br />
<br />
Public Class Form2<br />
Public ConStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _<br />
"Data Source =" & Application.StartupPath & "\ITDSS.mdb"<br />
Public con As New OleDbConnection(ConStr)<br />
Dim DataSet1, course As New DataSet<br />
'Dim SQLstr = "SELECT SectionID,Type,Group,TeacherID from [Section]"<br />
Dim SQLstr = "SELECT DISTINCT s.LevelNo, c.CourseID,c.SectionID,c.Type,c.Group, r.RoomID FROM [Section] c,Course s,[Slot] r where s.CourseID=c.CourseID and c.SectionID=r.SectionID ORDER BY s.LevelNo" ' in(select CourseID from Course Where LevelNo=1)" 's,Course c WHERE s.CourseID = c.CourseID ORDER BY c.LevelNo"<br />
<br />
Dim DataAdapter1 As New OleDb.OleDbDataAdapter(SQLstr, con)<br />
<br />
'----------------------===============================<br />
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br />
Dim SQLstr, SQLstr1 As String<br />
<br />
'Dim DataSet1, course As New DataSet<br />
'SQLstr = "SELECT SectionID,Type,Group from [Section]"<br />
Con.Open()<br />
<br />
'DataAdapter1 = New OleDb.OleDbDataAdapter(SQLstr, con)<br />
<br />
<br />
DataAdapter1.Fill(DataSet1, "Section")<br />
<br />
Me.DataBindings.Add("text", DataSet1, "Section.SectionID")<br />
<br />
DataGridView1.DataSource = DataSet1<br />
DataGridView1.DataMember = "Section"<br />
<br />
<br />
Dim bmb As BindingManagerBase<br />
bmb = Me.BindingContext(DataSet1, "Section")<br />
bmb.Position = bmb.Count<br />
bmb.Position = 0<br />
end sub
and i want to update it when button press
i but the flowing code
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click<br />
Dim CmdB As New OleDb.OleDbCommandBuilder(DataAdapter1)<br />
DataAdapter1.Update(DataSet1, "Section")<br />
<br />
End Sub<br />
End Class
but it give error update statement
please i need help
|
|
|
|
|
Um where is your update script!, I can see your select but no update
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
I have created a control that is basically an TextBox with an extra property of RegularExpression
Public Class RegExTextBox<br />
Inherits from Windows.Forms.TextBox<br />
<br />
Private _sRegEx As String<br />
<br />
Public Property RegularExpression() As String<br />
Get<br />
Return _sRegEx<br />
End Get<br />
Set(ByVal Value As String)<br />
_sRegEx<br />
End Set<br />
End Property<br />
After text has been entered then text is then validated against the provided Regular Expression
Private Sub RegExTextBox_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Leave<br />
If Not System.Text.RegularExpressions.Regex.IsMatch(MyBase.Text, _sRegularExpression) Then<br />
Throw New TextDoesNotMatchRegularExpressionException()<br />
End If<br />
End Sub
The problem that I am not sure how to trap the error on the form that consumes the RegExTextBox.
The only solutions I could come up with is to have another readonly property the returns true or false depending on whether the text is valid
Public ReadOnly Property IsValidText() As Boolean<br />
Get<br />
Return System.Text.RegularExpressions.Regex.IsMatch(MyBase.Text, _sRegularExpression)<br />
End Get<br />
End Property
Then delete the Leave event handler from the control and test the IsValidText property at form level.
Any guidance is appricated
Thanks
Steve Jowett
-------------------------
It is offen dangerous to try and see someone else's point of view, without proper training. Douglas Adams (Mostly Harmless)
|
|
|
|
|
A possible soloution could be to create your own custom event for when the value doesn't match the regex:
In your control
Public event InvalidData(Sender as Object)
Private Sub RegExTextBox_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Leave
If Not System.Text.RegularExpressions.Regex.IsMatch(MyBase.Text, _sRegularExpression) Then
Raise Event InvalidData(Me)
End If
End Sub
and in your main form:
Private sub InvalidRegexText(byval sender as object)
if typeof(sender) is RegExTextBox) then
with directcast(sender, RegExTextBox)
do whatever you need here
end with
end if
end sub
(p.s. the code may not be exactly correct - I havent tested it, but the theory is right)
|
|
|
|
|
I can be dim sometimes. It's not like I've never done it before.
I'm off to kick myself now.
Thanks
Steve Jowett
-------------------------
It is offen dangerous to try and see someone else's point of view, without proper training. Douglas Adams (Mostly Harmless)
|
|
|
|
|
is there any way to compress file in vb .net 2003 without using outside reference?
|
|
|
|
|
You could reference vjslib which should be listed under the .NET tab of the Add Reference dialog box.
The should then explore the java.util.zip namespace.
The only thing is, I as not sure it is available in the .NET Framework 1.x, but is available in .NET Framework 2
Steve Jowett
-------------------------
It is offen dangerous to try and see someone else's point of view, without proper training. Douglas Adams (Mostly Harmless)
|
|
|
|
|
I found the following article on CodeProject which may be of help http://www.codeproject.com/KB/recipes/cpzipstrip2.aspx[^]. It's in C# but should give you some pointers.
Steve Jowett
-------------------------
It is offen dangerous to try and see someone else's point of view, without proper training. Douglas Adams (Mostly Harmless)
|
|
|
|
|
i need to center align text when printing.( using Printer.print )
Thanks & Regards
|
|
|
|
|
I don't think that it is possible when printing, you have to use printer.currentX to position your cursor and do not forget to take in consideration the lenght of the sentence you write using textwidth
Hope it was helpful
Shay Noy
|
|
|
|
|