Forms :: Form Losing Focus - Keeps Loosing Focus ?
Nov 26, 2009
I have two forms in an application. One is he background and then I show another keypad form called with the show() method (not showDialog) because I need to perform some validations on btn click.
The kepad has 10 buttons and an Enter Button. The problem is that the form keeps loosing focus (I checked this with a messagebox which keeps poping up once for focus=true and again for focus=false, it continuously keeps losing and gaining focus) so it does not process any keypress events untill i click somewhere on the form. I tried using me.focus() in form load event but to no avail. The forms TopMost property is also set to true.
I have three forms frmStudent, frmClass and frmMain. I want to add code so that if the user focuses on another form without saving a message box will appear to prompt the user to save. This is necessary because If the user starts entering data on another, related formand assumes that the changes from the first form were saved, then there could be integrity issues.
I have tried formating the deactivate event, but when I hit yes it just deletes the record entered.
Private Sub frmStudent_Deactivate(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Deactivate If GradebookDataSet.HasChanges Then
I've created a small form that acts like the office notifications (fades inout above the notification icon tray)I'm having problems showing this form, I want to display it without the focus being taken from my main application (or any other form), I've managed to get the attached code doing roughly this, (using Me.Activate to take back focus) But this isn't great - focus switches for an instant plus I want to show the form from various areas in my application...
Dim frm2 As New frmNotification() frm2.TopMost = True frm2.Show() Me.Activate()
Is is possible to prevent a modeless form from losing its focus? I would like to force users to click the exit button of an addin form shown modeless before they wander into the main application. I need to show an user form of an addin modeless, in order to be able to interact with the document of main application. However, I would like to force them to exit this form before going into the main application.
I want to prevent my application from losing focus, untill I close it. (so that I can not click on ANYTHING else, untill I'm done with it. period.)I've tried using Me.Focus() on a timer, but that doesn't do s***...I've also tried countless API's out there, but I seriously can't get any of them to work.. my form simply does NOT want to stay in focus! It's driving me crazy! What the hell am I doing wrong?
I have a datagridview. If the user adds a new row, and then clicks away from the grid. How can i stop them from doing this?
I want them to finish the row add first or cancel it. I want to then update the table adapter in the grid's leave event.
If the row validation fails, i want to display a message and re-focus to the cell in question.
The first problem i am running into is that the focus continues to go to the control that the user clicked on to move away from the grid.
How do i cancel that event?
As an example, if the grid is on a tab page and the user clicks on another tab page, i want to prevent that page from displaying if there is an error on the row that is being added to the grid.
I was hopeing for a cancel option in the lost focus event of the grid.
Is there a more efficient/easier way changing the backcolor of a control when it has focus and lost focus? Let's say I've got 10 text boxes. Right now I would have 20 different events...10 for Enter event and 10 for Leave event. Of course, entering would change the back color to "green" and leaving would change it back to "white".
I've written a short application that consists of a form, listviewbox and a timer, the program sits in the taskbar with the form invisible, the timer is set for 40 seconds and basically it queries a database held on an SQL 2000 server, when a certain change happens within the database my form pops up and shows some data in the listview, this happens well, the problem I have is when the check is going on (every 40 seconds) the user loses focus on what ever they're working on. Is there a way I can stop this?
I need to start multiple processes, with minimized windows - and I don't want whatever the current process is to lose focus.Something like this should be simple enough:
[Code]...
However, whatever application is running will lose focus when this code is executed. I've looked high and low, and there doesn't seem to be any relatively simple way to do this. I had some ideas about capturing whatever application has focus (I don't want to assume my program has focus), then running the above code, and then restoring focus. However, I'm fairly certain this will require win32 API calls, and I'm not sure how to do that.
Dim sqlConn As New SqlConnection("server=.SQLEXPRESS;Integrated Security=true; Database=memberlist;") sqlConn.Open() Dim sqlComm As New SqlCommand("SELECT * FROM memberlist", sqlConn)
[code]....
when i do this the first msgbox pops up, i click ok, it then loses focus, i think its actually minimizing. I then have to click it in the task bar several times to get it to come back up. from then it will sometimes give each msgbox over and over just fine, sometimes it will minimizes random ones. the first one seems to be a constant.
I have 2 window forms, form1 has a button, which will send a msgbox when I click on, and form2 closes when it's deactivate-event raised. If I have form2 focused, and I click on the button of the form1, form2 will get focus and then close, but no msgbox showed from form1, what should I do to get the msgbox in that case?
I'm creating some software to keep my students on task. I've set it up so that I can control certain aspects of their computer from my computer. Problem is, I'm not sure how to control other applications from my application. I mostly just want to prevent it from being minimized. Some students like to switch screens quickly when I walk by. I would just like to make sure that it is always on top until I specify otherwise. I'm using VB.net, I'm using the 3.5 .net framework for compatibility reasons.
In VB .Net 3.5, is it possible to change the color of a DataGridViewCell (unbound) to a different color and have the cell visibly change before losing focus or leaving the cell? I have a timer that's running that queries with the data present and I'd like for the colors to change immediately instead of after the user leaves the cell.
I've tried DataGridView.Refresh and Me.Refresh and don't get results.
What am I doing wrong? (Below is the code I use to change the background)
''' <summary> ''' Sets or clears the passed cells background to Red ''' </summary>
On a .Net app, I got an AxDataGrid on a form. The DataSource of the grid is a RecordSet,created by parsing a comma-delimited text file.rom the UI, I add a new column with a defined size to the text file and then reload the data grid with a routine that creates a new ResultSet and binds it to the grid. Things are fine and the new column is shown.
is it possible to have the same effect as a dialogue box, with form focus? eg, when using the open dialogue box, if you try to focus on another form within the app, it doesn't' let you and starts flashing. But when you switch to another app, it doesn't interfere.
I have 1 form with about 5 other forms added into it. How can I check which form the user is currently on. I have tried using gotfocus for the 5 forms within, but it doesn't work. is there another way of seeing when focus has changed within the form?
I have a simple login field, which works fine with the exception of one quirk. The form is set up with the tab order to go to the UserID first and the Password text box second. This works fine when the form is used the first time, but when the form is used the second time the focus in placed in the Password field. If the form is used a third time, focus is moved the OK button, that is each time moves to the next tab order. I even tried to set the focus in the Load event as in Me.txtUserID.Focus(), but this doesn't change the behavior. Again, I should note that I close the form and not hide the form.
I am migrating my code from vb.net 1.1 framework to vb.net 3.5In my windows application, the base window has some buttons and events are written for the same.I have shortcuts defined for these buttons also, for example: ctrl+d, DEL (keyboard) etc.Now i open a property Grid form on top of my base window for a selected object.Even when the focus is on this property grid, i am noticing that my base window events are firing on pressing those shortcuts.
example:I select some text in my property grid and hit delete button from keyboard. The delete event that i have written for the selected object gets fired and the text is not deleting.I fail to understand why is it happening. It wasnt behaving like this in .net 1.1.In .net 1.1 it would delete the text and only when the focus is back on the base window, hitting Delete would call the event.How do i control such a behavior? Is there some property that i need to set for property grid in .net 3.5 to prevent base window events from firing till the time focus is on property grid form?
I have created an app which has a timer control which, when activated and meets a certain criteria, launches a second form with an alert for the user to review and action. this works just fine. Except.... when the main app is minimised and has lost focus, instead of launching the second form to a normal windows state it opens and sits in a minimized state itself and just flashes. How can I get the the second form to restore to a normal windows state?I have tried form2.focus and tried the windowsstate=normal etc but I'm still barking up the wrong tree.
I've got a Child form being shown with it's TopLevel property set to False and I am unable to click a MaskedTextBox control that it contains (in order to bring focus to it). I can bring focus to it by using TAB on the keyboard though.
The child form contains other regular TextBox controls and these I can click to focus with no problems, although they also exhibit some odd behavior: for example if I've got a value in the Textbox and I try to drag-click from the end of the string to the beginning, nothing happens. In fact I can't use my mouse to move the cursor inside the TextBox's text at all (although they keyboard arrow keys work).I'm not too worried about the odd TextBox behavior, but why can't I activate my MaskedTextBox by clicking on it?
Below is the code that shows the form:
Dim newReportForm As New Form Dim formName As String Dim FullTypeName As String Dim FormInstanceType As Type
Here is what I've done:1) Created an Excel COM add-in for Excel 20032) Added a NotifyIcon to the Windows taskbar notification area (aka system tray) during ThisAddIn_Startup3) Added a ContextMenuStrip with a ToolStripButton to the NotifyIconWhy is it when I right click on the NotifyIcon, Excel gains focus? If after clicking on the NotifyIcon to display the ContextMenuStrip I choose not select an option on the ContextMenuStrip and instead click back on the Excel window, I get a weird flashing cell in Excel.I've created a video of the problem to help you see what I [url] anyone know how to prevent this? Ideally, I'd like to be able to click back on Excel and only have the ContextMenuStrip close and Excel regain focus.
I have a textbox on a form that when it loses focus it updates other text boxes on the form. But before it updates the other textboxes I check the input value in the textbox lostfocus event if it is undesired I return focus to the the textbox and alert the the user with a msgbox. However where my problem is, is that when the cancel button is clicked I don't care what the input in the textbox is because the changes are being canceled but if the value is undesired the it keeps returning focus to the textbox instead of canceling the changes. Is there a way to see what control was clicked on before or in the lost focus event? Can't seem to figure it out tried enter and leave events but no luck!
So for example something like this...
Code: Private Sub TextBox1_LostFocus(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.LostFocus If Control that was clicked <> btnCancel then
Most of my experience in Visual Basic programming is in VBA. I'm currently trying to build a VB.NET Windows application that basically consists of a form that has one button and one label. When the button is clicked, the label should serve as a "counter" that counts from 0 to infinity until the user closes the window with the "x" button. I do this by putting a loop with a sleep statement in the onclick sub. The loop iterates the integer that is displayed in the label and does a "Me.Refresh".The problem is when the window loses focus. When it loses focus (when I click off of it), the counter stops. Even when I click back on it, the counter doesn't resume.
I am having problem setting focus on specific cell in my Datagridview1 . On Form1 when clicking on cell 3 in any row, I am callig a Dialog1. However, when done working with it, and closing the Dialog1, the focus returns to cell 3 in my Datagridview1 . I like to set the focus on the next cell(4) making it the current cell.
And few other things, I am always getting this exception: Operation is not valid because it results in a reentrant call to the SetCurrentCellAddressCore function.
Is it possible to set focus on the keydown event so after the button control, sets the focus into the keydown? although says often control can have focus,.Putting a button and a keydown event on a form...
I can't seem to get input focus on a textbox when a tab page first comes up (I'm using Windows Forms, VB.NET 3.5). I have a textbox on a panel on a tab page, and I want the focus to be on the textbox when the tab page comes up. I want the user to be able to start typing immediately in the focused textbox without having to click on the textbox. I have tab stops set in the order I want and the textbox is the first tab stop. The tab stops work except that when the tab page comes up the focus is not on the textbox, i.e. the one that's first in the tab order.
In the Enter event handler of the tab page I call the Focus method of the text box, but it returns False and does nothing, no error messages. I know I can access the text box because at the same point in the code I can set the text of the text box.If it matters, the layout of the tab page is a little complicated:[URL]..I want to set the focus on TextBox1.
What's the best way to get the focus on the desired textbox? If setting focus is the best way, why is the textbox.Focus() method failing?
In VB6, Something.SetFocus sets the focus to that Something. No problems there - in .Net it's called .Focus.On another thread I was told (twice!) to use Something.Select in a particular scenario (which works fine by the way).