Jump to content
Sign in to follow this  
bjs

syslistview32

Recommended Posts

:)

This is giving me a headache now .

I am able to navigate between both left and right panes of the program , use buttons to move to the selected item I need .

Double click on the selected item brings up an edit box .

I have tried search the forum for anything already annouced and related to this subject , and have not been able to find anything suitable .

I have tried all the commands related from the manual .

If anyone knows how to send 2 left mouse clicks , whithout using those coords rubbish , please let me know .

Otherwise I'll have to write parts for different user screen resolutions , and include it from the startup of my tool so users get to choose , but thats only if coords cannot be passed .

The app is almost complete , its just this holdup thats causing me grief .

Ps : that sci tool , dose an excellent job , and having allready seen the sticky on what to do before posting a question , I do have to ask .

why dose it return an error like this :

last ) is error , or

points to last " as error

I have tried many variations to pass this problem but sci wont .

I can copy this to a blank template , and it dose run , and properly .

Oh yes , this is a tool to automate something I do all the time which I think others will appreciate when its released .

Thanks and well done autoit , without it , I wouldnt have started programing in the first place .

Before I foget : winxp + sp2

Share this post


Link to post
Share on other sites

Um..... Lets take a look at the optional! parametres for MouseClick() shall we.

MouseClick ( "button" [, x, y [, clicks [, speed ]]] )

OMG! Look at that, the co-ordinates are optional!. Sorry if I sound sarcastic :).

Edited by Burrup

qq

Share this post


Link to post
Share on other sites

Um..... Lets take a look at the optional! parametres for MouseClick() shall we.

MouseClick ( "button" [, x, y [, clicks [, speed ]]] )

OMG! Look at that, the co-ordinates are optional!. Sorry if I sound sarcastic :D.

<{POST_SNAPBACK}>

:)

Duh , but it still dosent work ?

Considering the fact my application is almost completed after 55 hours of effort , and that I have only been using autoit since downloading it last week , I do think I am brighter than the average light bulb , esspecially when it comes down to hand coding working buttons in dvd menus .

thats what my tool is to help with , too automate the process that takes me 13 hours to do .

And hell no , I refuse to buy any program to do this when a freeware has allready been created , Im just automating the process I use for myself and anyone else who's intersted in doing the menu buttons in dvds for free .

How about , information that might relate to :

mouse events related to a highlighted area (all ready selected) or

a way to search for a given string that can have mouse clicks fired at it .

Thanks .

Or is there a way of detecting the users screen resolution so my script will only fire off those that match ?

Edited by bjs

Share this post


Link to post
Share on other sites

@DesktopWidth
@DesktopHeight

Is your screen resolution.

Still dont get you.

mouse events related to a highlighted area (all ready selected) or

a way to search for a given string that can have mouse clicks fired at it .

You mean you want to find some text on the screen? and then click that text?

qq

Share this post


Link to post
Share on other sites

@DesktopWidth
@DesktopHeight

Is your screen resolution.

Still dont get you.

You mean you want to find some text on the screen? and then click that text?

<{POST_SNAPBACK}>

Ok , that I havent tried , the text on screen , but I am not sure that will work with this program .

If so

I will be seeking [009b] , as the text , sending mouse clicks to it , run that part of the script , then movibg to the next item surround by [] .

Can you show me something in a script that I could learn the process from .

that would be a greate help to me .

Share this post


Link to post
Share on other sites

Look at WinGetText () and ControlGetText (). I suppose if you the controlID of the object you can get its text. If the texts = what you want it to, you can then use ControlClick() on the controlID to click it.


qq

Share this post


Link to post
Share on other sites

Look at WinGetText () and ControlGetText (). I suppose if you the controlID of the object you can get its text. If the texts = what you want it to, you can then use ControlClick() on the controlID to click it.

<{POST_SNAPBACK}>

Ok , I can see where you are pointing too here .

I'll go now , its 2.41am in au , and report back tomorrow with my findings .

thanks for jogging the mind on other ideas I havent yet tried , its appreciated ..

there may be a way of beating this nuciance yet ....

Share this post


Link to post
Share on other sites

Oh , here's a snap of what I am trying to do , send mouse clicks to the highlighted area .

Share this post


Link to post
Share on other sites

Have at look at ControlListView() and read all the information if has.

Edited by Burrup

qq

Share this post


Link to post
Share on other sites

The info to that window as follow :

>>>>>>>>>>>> Window Details <<<<<<<<<<<<<

Title: VobEdit v0.6

Class: #32770

Size: X: 213 Y: 376 W: 974 H: 526

>>>>>>>>>>> Mouse Details <<<<<<<<<<<

Client: X: 535 Y: 51

Cursor ID: 2

>>>>>>>>>>> Pixel Color Under Mouse <<<<<<<<<<<

RGB: Hex: 0x316AC5 Dec: 3238597

>>>>>>>>>>> Control Under Mouse <<<<<<<<<<<

Size: X: 350 Y: 10 W: 606 H: 402

Control ID: 1001

ClassNameNN: SysListView322

Text: List2

>>>>>>>>>>> Status Bar Text <<<<<<<<<<<

>>>>>>>>>>> Visible Window Text <<<<<<<<<<<

Close

List1

List2

Open

Jump

Demux

Save VOB_I

Correct VOB

Copy2Clipb

Angle

Button

SysHdr

SlPlay

VOBU_SRI

About

>>>>>>>>>>> Hidden Window Text <<<<<<<<<<<

Share this post


Link to post
Share on other sites

Have at look at ControlListView() and read all the information if has.

<{POST_SNAPBACK}>

Keywords were, read and all...

Command, Option1, Option2 Operation 
"DeSelect", From [, To] Deselects one or more items. 
"FindItem", "string to find" [, SubItem] Returns the item index of the string. Returns -1 if the string is not found. 
"GetItemCount" Returns the number of list items. 
"GetSelected" [, option] Returns a string containing the item index of selected items. If option=0 (default) only the first selected item is returned. If option=1 then all the selected items are returned delimited by |, e.g: "0|3|4|10". If no items are selected a blank "" string is returned. 
"GetSelectedCount" Returns the number of items that are selected. 
"GetSubItemCount" Returns the number of subitems. 
"GetText", Item, SubItem Returns the text of a given item/subitem. 
"IsSelected", Item Returns 1 if the item is selected, otherwise returns 0. 
"Select", From [, To] Selects one or more items. 
"SelectAll" Selects all items. 
"SelectClear" Clears the selection of all items. 
"SelectInvert" Inverts the current selection. 
"ViewChange", "view" Changes the current view. Valid views are "list", "details", "smallicons", "largeicons".

Please actually read whats in the helpfille so I don't have to explain it.

Edit: This will make it easier for you... http://www.autoitscript.com/autoit3/docs/f...rolListView.htm

Edited by Burrup

qq

Share this post


Link to post
Share on other sites

Well not really , the help file isnt helping , as the text is from the window , but because its a syslistview32 issue , I cannot actual get any information on the item I had highlighter in the picture I uploaded .

Been at it for another 12 hours to see if mouse click can be sent , but someone mentioned system hook to registry on another site , which dosent sound pleasant as I am xp , but what if the other user is not , the reg entries may not coincide in the same place or be the same as far as I know .

However , I have finished my shell for the program , icons and all buttons , with a few scripts that dont need mouse functions , and all from the supplied files that came with autoit , not bad for a first timer .

Anyway you soon see what this is all about as soon as you read this script :

; This script is for 1280 x 1124 screen resolution ONLY

; Only modify where I say you can do so ....

; This script is to automate the button creation within vob files

; Generated using Autoit Scite Autorecord

; Created through the knowledge of BJS in vobedit usage to create dvd menu buttons

; Script modified by BJS

; Original usage was for still menus ..

; But because of autoit , I have writen scripts to deal with movie menus that have audio streams in them ..

; Note : some programs used by these scripts do have a minimum screen resolution

; This mouse coords is giving me the S**TS....

; In some cases , if the mouse itself is not used to click on a certain boxs in vobedit , it will cause this script to do one of two things ...

; One : go plain spazz when error happens (safe , just gose plain stupid , bash the esc key repeatedly till it halts)

; Two : just plain stops

; This initial script took me 48 hours solid work to figure out what was acceptable between autoit usage and vobedits allowed usages ...

; Drove me bonkers .........

; BUT IT DAMN WELL WORKS NOW ........... FINALLY ..... now to get some damn sleep

; next four lines is optional "opt"

Opt("WinWaitDelay",100)

Opt("WinTitleMatchMode",4)

Opt("WinDetectHiddenText",1)

Opt("MouseCoordMode",0)

; This line is NOT optional (the program MUST go there)

Run('C:\Program Files\VobEdit.exe')

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{TAB 3}{ENTER}")

WinWait("Open","")

If Not WinActive("Open","") Then WinActivate("Open","")

WinWaitActive("Open","")

;Note : this script looks for a single cell vob in D:\newfolder

: you must have another folder in there as well , sorry , my stuff up

; fix later .....

Send("{TAB 7}{DOWN}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{TAB 11}{DOWN}{TAB 7}{SPACE}{TAB 7}{DOWN 86}")

; Yes I counted the damn things as I pressed the keys

MouseMove(511,89)

MouseClick("left",511,89,2)

WinWait("Edit value","")

If Not WinActive("Edit value","") Then WinActivate("Edit value","")

WinWaitActive("Edit value","")

; No idea ? , but it MUST be included

Send("4096")

; Give me a break , even I dont know everything ..... yet

MouseMove(232,48)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 61}")

MouseMove(556,90)

MouseClick("left",556,90,2)

WinWait("Edit value","")

If Not WinActive("Edit value","") Then WinActivate("Edit value","")

WinWaitActive("Edit value","")

; These numbers relate to the number of buttons you require for your menu

;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Send("13{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

MouseMove(554,103)

MouseClick("left",554,103,2)

WinWait("Edit value","")

If Not WinActive("Edit value","") Then WinActivate("Edit value","")

WinWaitActive("Edit value","")

; This number relates to the number of buttons you require for your menu

Send("13{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 61}")

MouseMove(555,89)

MouseClick("left",555,89,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; Important : both numbers relaled to the number of buttons MUST be the same

; and relate to the button information I have supplied for all thirteen buttons

;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

; You may replace the following code for your own color scheme , if you know what you are doing first

Send("{TAB 2}00005af011105af0")

MouseMove(482,52)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 72}")

MouseMove(549,89)

MouseClick("left",549,89,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; You may replace the following code for your own color scheme , if you know what you are doing first

Send("{TAB 2}22205af033305af0")

MouseMove(474,51)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 72}")

MouseMove(598,90)

MouseClick("left",598,90,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; You may replace the following code for your own color scheme , if you know what you are doing first

Send("{TAB 2}44405af055505af0")

MouseMove(475,50)

MouseDown("left")

MouseUp("left")

Sleep(1000)

; Now we do the buttons , in this sample there are 13 , they stack on top of each other over to the right ....

; As this is for 1280 x 1024 screen resolution , under NO circumstances , and I mean it ..... the following

; DO NOT CHANGE SENDS , these are accurate for 1280 x 1024

; You may change numbers where I say so only , thats the rule , break them , and the script fails .... you have been warned

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 74}")

MouseMove(557,86)

MouseClick("left",557,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed - you must know what you are doing FIRST

Send("{TAB 2}1{TAB 2}535{TAB}40{TAB}614{TAB}62{TAB}13{TAB}2{TAB}1{TAB}1{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",557,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed (they relate to how they connect to components in dvd structure (titles / other menu's)

; As there are 13 buttons in this example , they should relate to different titles / menu's

; This one plays first title (say spiderman preview)

Send("{TAB 2}300200000001")

MouseMove(470,49)

MouseDown("left")

MouseUp("left")

sleep(1000)

; Need to realign appropriately according to rest of script ....

send("{DOWN 56}")

MouseMove(557,86)

MouseClick("left",557,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",557,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays second title (happy gilmore preview)

Send("{TAB 2}300200000002")

MouseMove(470,49)

MouseDown("left")

MouseUp("left")

sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}126{TAB}648{TAB}152{TAB}2{TAB}4{TAB}3{TAB}3{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays third title (sharktale preview)

Send("{TAB 2}300200000003")

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}170{TAB}660{TAB}194{TAB}5{TAB}5{TAB}4{TAB}4{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays forth title (pitchblack preview)

Send("{TAB 2}300200000004")

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}208{TAB}670{TAB}236{TAB}4{TAB}6{TAB}5{TAB}5{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays fifth title (sharks bay preview)

Send("{TAB 2}300200000005")

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}248{TAB}650{TAB}274{TAB}5{TAB}7{TAB}6{TAB}6{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays sixth title (blue beard preview)

Send("{TAB 2}300200000006")

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}290{TAB}668{TAB}316{TAB}6{TAB}8{TAB}7{TAB}7{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays seventh title (Track gore - mini movie I made) , truck racing claims innocent by stander behind safety barrier , rated 18+

Send("{TAB 2}300200000007")

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}328{TAB}698{TAB}354{TAB}7{TAB}9{TAB}8{TAB}8{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays Eighth title (bear cavern preview)

Send("{TAB 2}300200000008")

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}370{TAB}664{TAB}396{TAB}8{TAB}10{TAB}9{TAB}9{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays nineth title (socom game preview converted)

Send("{TAB 2}300200000009")

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}406{TAB}638{TAB}432{TAB}9{TAB}11{TAB}10{TAB}10{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; ok , from here on it gets a little tricky so I will include the code for my 13 buttons

; 13th points to another menu ...

; to understand alot more about these numbers , you should grab bjs_pcgedit_guide.pdf , which explains alot and how to get past pcgedits button creation problem . (at the moment its shared using sharazza p2p)

; when you save your dvd , they dont exist , this is WHAT this script FIXES .....

; This is to assist newbies into dvd creation , fast yet flexible , and with full support from bjs on any of his scripts

; ok , lets look at these double digit title numbers now ....

; This one plays tenth title (battlefield earth preview)

Send("{TAB 2}30020000000A")

; Notice that A , yes , it represents 10th title

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}448{TAB}638{TAB}474{TAB}10{TAB}12{TAB}11{TAB}11{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays eleventh title (evil dead 2 preview)

Send("{TAB 2}30020000000B")

; B is for 11

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}486{TAB}674{TAB}516{TAB}11{TAB}13{TAB}12{TAB}12{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; This one plays twelfth title (carmagedon preview)

Send("{TAB 2}30020000000C")

; this one is C

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 56}")

MouseMove(598,86)

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; These numbers below may be changed

Send("{TAB 2}1{TAB 2}535{TAB}528{TAB}622{TAB}554{TAB}12{TAB}1{TAB}13{TAB}13{TAB}{ENTER}")

WinWait("VobEdit","")

If Not WinActive("VobEdit","") Then WinActivate("VobEdit","")

WinWaitActive("VobEdit","")

Send("{DOWN 66}")

MouseClick("left",598,86,2)

WinWait("Dialog","")

If Not WinActive("Dialog","") Then WinActivate("Dialog","")

WinWaitActive("Dialog","")

; Lucky for some I think , but for now , it links to the second menu called PC GAME PREVIEW

; it is a title you bring into pgcedit , then scan for bov's , then link the buttons up to what you need

; of course I have already told vobedit the titles each points to .

Send("{TAB 2}30020000000D")

; Wait till you get to having 55+ titles , it changes dramatically

MouseMove(474,49)

MouseDown("left")

MouseUp("left")

Sleep(1000)

; dont know this yet , but when done the scipt ends , get out .

; leaves vobedit open for you to judge what has taken place , if happy , close it

; thats that .....

; hell no , it works , so why do it any other way , maybe I will add the end to it , later ............

; These are the three color schemes used

; My color schemes

;Send("{TAB}{TAB}00005af011105af")

;Send("{TAB}{TAB}22205af033305af")

;Send("{TAB}{TAB}44405af055505af")

; Here I have a list of buttons you can have (36 is maximum allowed) , and broken into groups for this example

; Pay attension to notes , and you wont go wrong

; 13 buttons with correct numbers already created to go into application

; My example buttons for menu only

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}40{TAB}614{TAB}62{TAB}13{TAB}2{TAB}1{TAB}1{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}126{TAB}648{TAB}152{TAB}2{TAB}4{TAB}3{TAB}3{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}170{TAB}660{TAB}194{TAB}5{TAB}5{TAB}4{TAB}4{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}208{TAB}670{TAB}236{TAB}4{TAB}6{TAB}5{TAB}5{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}258{TAB}650{TAB}274{TAB}5{TAB}7{TAB}6{TAB}6{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}290{TAB}668{TAB}316{TAB}6{TAB}8{TAB}7{TAB}7{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}328{TAB}698{TAB}354{TAB}7{TAB}9{TAB}8{TAB}8{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}370{TAB}664{TAB}396{TAB}8{TAB}10{TAB}9{TAB}9{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}406{TAB}638{TAB}432{TAB}9{TAB}11{TAB}10{TAB}10{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}448{TAB}638{TAB}474{TAB}10{TAB}12{TAB}11{TAB}11{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}486{TAB}674{TAB}516{TAB}11{TAB}13{TAB}12{TAB}12{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}528{TAB}622{TAB}554{TAB}12{TAB}1{TAB}13{TAB}13{TAB}{ENTER}")

; Another 22 buttons

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

; Last button you can have ...(36th)

; Always include 1 button that can return to previous menu , if you dont , your silly ...

;Send("{TAB}{TAB}1{TAB}{TAB}535{TAB}85{TAB}624{TAB}108{TAB}1{TAB}3{TAB}2{TAB}2{TAB}{ENTER}")

; Final Notes :

; I have created a guide to show how to create motion buttons for your dvd menus using vitualdub and avisynth

; I am also currently working on scripts that help automate this work .

; Takes time to write guides that even NEWBIES can understand from scratch ...

; Most people learn from actually seeing it work , then ask how it works , only then will they beable to learn ...

END

There you have it , see for yourself ...

I dont use it for stupid games , but to carry out tasks that can if done by hand take a very long time

This script is part or a series I am creating , so i can take a movie preview , rename the cells automatically 1,2,3,4,5,6,7 , and unitl last one .

Then use ifoedit to spit it out in cells only , run this script on them all , and use another script to reanme all the cells to what ifoedit expects .

Then I have a movie preview with working buttons ...

Why ?

Why pay for software , only to be dissappointed and let down , and then having someone as clever as myself look at the problem and find another sollution thats free and dose the task the original person wanted in the first place ...

I do hope you now see what I am trying to do , I have studied the help file seriously , and the samples , but I think this program is "one of those" types that have specific issues like some others I have seen in the forum .

How to send 2 x left mouse clicks , without needing coords , so the program thinks you have double clicked on the item in question thats highlighted or selected , thats the question I need a cure for ?

:)

Share this post


Link to post
Share on other sites

Try to use the Code tags...

Maybe this can help you. Just made it then, not the _IsPressed Function but.

You will have to change the $Program_Name to the title of your program, it is currently set to 'Program Files'.

If the given window is in focus and an item in the SysListView32 inside the window is selected AND you click, it will tell you with a message box.

Test it by opening up My Computer and going to your Program Files directory.

Im still not sure what your trying to do, or I have forgotten. But if you change the Msgbox, that appears with the detection of a mouse click, to send 2 left clicks, then it would just be as if a person double clicked the item selected.

Could help you, possibly, maybe.

Btw, I created this from looking at my above link containing the information for ControlListView().

#Include <GUIConstants.au3>

$Program_Name = "Program Files"

While 1
   $msg = GUIGetMsg()
   Select
      Case _IsPressed(01)
         Local $Focus = ControlGetFocus($Program_Name)
         If $Focus == "SysListView321" Then
            $test = ControlListView($Program_Name, "", "SysListView321", "GetSelected", 0)
            If $test <> "" Then
               MsgBox(0, "Test", "Click Detected")
            EndIf
         EndIf
   EndSelect
WEnd

Func _IsPressed($hexKey)
   Local $aR
   $hexKey = '0x' & $hexKey
   $aR = DllCall("user32", "int", "GetAsyncKeyState", "int", $hexKey)
   If Not @error And BitAND($aR[0], 0x8000) = 0x8000 Then Return 1
   Return 0
EndFunc
Edited by Burrup

qq

Share this post


Link to post
Share on other sites

:)

Thanks Burrup , I am trying to digest some information you posted to others in the forum over time .

It was my brain cells overloading from all the smoke and ash over this irritating proble m , and did another search on keys , cant recall the exact phrase , the first just said "no pot luck mate" try again .... wrong word first .

Then I did an msn search , you never know what might appear there , and found a whole lot of information at one site regarding these hotset keys , which is going to be something for next week to work on , as its not something I have dealt with before (I hate them with a vengence) , because I forget the silly things are set .

Got to take a day or two to do some chores that didnt get done due to my interest in creating scripts again for doing alot of my video related tasks .

Better get back to that script and fix up some stupid mistakes I did , like having to have a second partition and the rest , I just spent another 12+ hours trying to get it to work , and sci occasionally threw in some weird numbers into the script every now and then and with the script this long , it took me a while to see what it had done .

Sometimes the script got through all the color schemes , and ?

Other times it just shot straight through with out even a second thought .

Then there's that autoit tool , I took it about the screen , and it affected the autoit help file by hiding windows and such , maybe thats a bug to look at .

So I have a serious look at what you posted , and the other related materials I have collected , and see if it jogs me into second gear .

My only real question is related to the dll specifics .

As I am xp , if I include something like what you have just posted , will this affect others not using xp ?

And jog my memmory on the key you have used as the hotkey , I havent seen that used in years , and I think the key is "r" .

Share this post


Link to post
Share on other sites

Are you sure you looked at the script correctly?

Firstly, my script doesn't contain any Hotkeys. If it did there would be something similar to this located somewhere in the script, most probably at the top.

HotKeySet ( "a", "MyFunction")

Secondly, I am unsure if this will affect other OS'. The only thing that I can think of is that 'SysListView321' may not be called that in other Operating Systems and the script would be trying to get information of an object that doesn't exist.

Thirdy, I did not created the _IsPressed() nor do I fully understand it as I have not yet looked into the API-Function 'GetAsyncKeyState'. If you are referring to User32.dll, and if it will exist on other OS' I am unsure aa I have only ever ran it on XP SP2.

If you wish to learn more about the _IsPressed() Function and its limitations, if any, you should PM ezzetabi as he created this originally, in this topic http://www.autoitscript.com/forum/index.ph...wtopic=5760&hl= .

Happy Scripting.

Edited by Burrup

qq

Share this post


Link to post
Share on other sites

:)

No probs then ..

I have several pcs here as I repair pcs for other users , and all run different os's from each other , so I'll give it a test sometime over the next 48 hours and see if its called by any other name on the other pcs , only then will I be sure as to the correct approach to this problem .

And at the same time run my script , and another 3 I have created and see if any of them trip up in anyway .

From what I can remmember there was a difference in what the window is refered to , under one of the other os's , cant recall what , but I was messing about with c++ at that time to do the same thing , but never really got the hang of that style of programing .

Too much going back and forth and not enough resources to keep me interested in it at that time .

I think I recall something related to windows 95 or 98 , dont have the book here as I gave it to another fellow , and as for that user32.dll , I'll check it too , I am sure I seen that elsewhere as I ran into it when probing through another program for a particular dll hook it had and seen that by name .

wouldnt be positive if that was just a messed up pc that had the os reloaded , it was brought to me with bootsector problem (not holding info) ..

thanks , better pop off and catch this fellow before he leaves for melbourne today .

Share this post


Link to post
Share on other sites

:)

Ok , this is bugging the crap out of me now , seriuosly ...

While working in autorecord , it decided that when I goofed up (hit the wrong button) , I hit the esc key , it started to run a script that was on my desktop ?

What gives ? as this script was the one I was working on and when I looked into it again after closing autoredord and sci , I found it was trying to input what I had been working on from another script , that contained my vobedit script information .

The script I was creating was on the desktop only , and the info sci decided to add came from my vobedit script which is in new folder on my desktop ?

Any ideas's as to why sci ran , and added this ?

Ps , I think's I have found a way to my mouse input problem that might work on all os's and dosent use any dll calls , I'll be giving it a go later tommorrow in xp , me and 98 to see .. :D

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...