The treeview is a SysTreeView32 class. I am using Win32::GuiTest and Win32::API for the calls not supported in Win32::GuiTest. My Win32 programmers reference does not mention any way to enumerate the treeview. I was hoping to find some Win32 API that I could call using the Win32::API module. I have tried GetWindowText and SendMessageA but to no avail. Ultimately I would like to write a sub that returned a hash of the treeview structure.
###############
sub getWindowText{
my $hwnd = shift || return;
$GetWindowText ||= new Win32::API("user32", "GetWindowText", ['N',
+ 'P', 'N'], 'N') || return;
my $title = " " x 1024;
my $titleLen = 1024;
my $result = $GetWindowText->Call($hwnd, $title, $titleLen);
if($result){return substr($title, 0, $result);}
#if no result send a WM_GetText message to the window
$WmSendMessage ||= new Win32::API("user32", "SendMessageA", [N, N,
+ N, P],'N') || return;
my $WM_GETTEXT=13;
my $text = " " x 2048;
my $textLen = 2048;
my $result = $WmSendMessage->Call($hwnd,$WM_GETTEXT, $textLen, $te
+xt);
if($result){return substr($text, 0, $result);}
}
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.