QTP script works in big screen but not in small screen - testing

I am using QTP 11.0 and a java button in my application is highlighted in big monitor screen(19 or 20 inch) but not in Laptop screen(14 or 15 inch).
I have to click the button and a pop up will be seen,this works fine in big screen but in laptop screen the pop up does not appear.Is there any workaround?
In small screen the scroll bar appears and the java button is below the screen, but in big screen its appeared without scrolling so its working fine with the big screen.
Also i have tried if scroll down is possible through scripting in small screen ,but scroll down does not work NOR does pgDown pgUP works in the application.
Addins selected are ActiveX,Java,Web
Advanced thanks...

As per the given information I assume that the problem is with the object properties of the java button. Could you try adding only htmlid/name property & try highlighting the object in both the screens? Please disable object identification, location & indexing if applicable. If possible share the properties of the object for further analysis.

Does QTP fail to recognise the button during play back? QTP may not highlight the button because it is not visible; but in most cases it will be able to perform actions (such as click event) on the button. Make the button visible in web page / application and try clicking on Highlight button in QTP.

Related

Dodge focus on a form upon click

I made a simple utility application for switching between multiple instances of a game that runs in fake fullscreen or borderless window mode. Essentially it just displays a row of buttons with names for the different instances and when I click the button it switches to that instance.
Things work great except for a little annoyance - upon clicking, there is like 1 millisecond where the taskbar flashes to the foreground. I think this is due to my application getting focus for a brief moment before it hands it off to the game instance which hides the taskbar.
Is there a way to avoid getting focus on my application when clicking its buttons? Its form sits on top of all other windows at all times anyway.

How does PowerPoint reconfigure the screens on a portable PC?

I've developed a VBA-style add-on for PowerPoint in C# using NetOffice Framework, https://github.com/NetOfficeFw . The add-on is now working, and in fact my question is not really related to that.
On my desktop PC I have four screens, and when PowerPoint is in "slide show mode" it takes over two of the screens, one for the slide show and one for the presenter screen, both shown in full screen mode. The normal PowerPoint window is also still there on one of the other two screens.
On my old portable PC with an extra screen connected, the extra screen normally shows a mirror image of the built-in display. But when PowerPoint goes into "slide show mode" it somehow reconfigures the system and shows the slide show in full screen on the connected screen and the presenter screen on the built-in display. Very clever.
But what exactly has PowerPoint done, and how? Is this documented anywhere?
This is mostly just to satisfy my curiosity. I have now recoded my add-on so it works - I was previously using the .Net System.Windows.Forms.Screen class to figure out where to position the mouse cursor when I'd placed PowerPoint in "slide show mode", but that doesn't work on my portable PC because it maintains that there is still only one screen on the system.
Older versions of PPT behave differently but current versions, when you start a slide show, change your windows video settings from mirror to extend and put the slide show view on the second monitor unless you override the default settings. Then it resets the video to the previous setting when you end the slide show.
When you extend the display across multiple monitors, Windows sees it as one large screen, which explains why your PC reports only the one screen, I think.

Why the WebView is always on top and can't handle focus etc.?

Suppose you have in your Metro application the WebView component taking all the "page" height (except the "title bar" of course). At the left side from the WebView you have some other elements. You also have some buttons in appBar with ListView menus attached to the button press events. Now try to see your ListViews and also try to move focus between the page elements with TAB key ;)
I already have some workarounds.
I just wanted to ask if somebody knows WHY Microsoft did it so?
Thanks.
The WebView has it's own HWND (Window), while your Metro app renders in a second HWND. There is a long history in Windows development regarding windows and overlaps. Usually when a window is in front of another window, the OS only draws the top window pixels.
That's what's happening here. The WebView windows is drawing over top of your other UI elements.

Using Popup control in Window 8

Is there any property of pop up , wherein we can dim the window app.
As in metro app there is no Child Window control available , so using
popup in place of it but the problem in popup is when it is open the
user can still interact with other control on window app.
So is there an workaround to make the window app dim when pop is open.
I'm not sure to understand what your trying to do. You can put a Border as first child of the popup which exposes the Background property. So if you specify a not null Background (Transparent for instance) the popup will catch every interactions.
It sounds like you want the MessageDialog class. The popup is meant to be non-modal, letting the user close it by just clicking away from it. The MessageDialog is a regular modal popup that does not let the user interact with the rest of the app when it is displayed.
If you really insist on using the popup control, here is a simple workaround:
Make the popup use all the screen (using a grid or border), then set that background to Black with opacity 0.1 (or any other color you see fit, this is to give a "dim" effect), then inside this popup, place another container with the size and margins that you want to act as your "real" popup.
Because the popup takes the whole screen it will prevent the user from clicking anywhere in the screen.

Item below charms bar gets invoked when search is clicked

I have created a page with horizontal layout listview with enough items added to it have a horizontal scrollbar. When you click an item in de listview it navigates to a different page with some details about the clicked item.
Now I have added search functionality to my app by use of the search contract. That's where the problem arises. When you open the charms bar, it overlays over the listview which is good. But when I click the search icon in the charms bar search is opened, but also the listitem's (which is below the charms bar ) click event is getting invoked.
Anyone else who has seen this behaviour? It feels like a bug to me in the charms bar? Hopefully someone has seen this too and has a solution to prevent this behaviour?
Nice try, but whatever you do (Dispatching, Timer...), the click event is raised prior the OnSearchActivated.
Btw, we've "fixed" this problem by providing the view margin of 86 pixels on the right (I measured the Charm bar, and no matter what resolution, it's 86 pixels).
To keep the view symmetric, we also provided 86 pixels on the left.
Tested it yesterday on the RTM version and it seems that this issue is fixed in the RTM version.
Thanks everyone for your input.
One quick thought is that your app is activated from the OnSearchActivated method when the user invokes a search; you could possibly add/remove event handlers in there.