Jump to content

Multiple tabs with different functions


 Share

Recommended Posts

Hello again. I'm trying to figure how to code each tab to have different functions. Let me post the code so that you can see what I'm talking about:

#include <GUIConstants.au3>

Opt("TrayIconDebug", 1)

GUICreate("Program Name", 310, 500, -1, -1)
$lucida = "Lucida Sans Unicode"
$tahoma_Bold = "Tahoma Bold"
$tnr_Bold = "Times New Roman Bold"
$exit = GUICtrlCreateButton("Exit", 210, 450, 80, 25)
GUICtrlCreateTab(5, 5, 300, 490, $WS_EX_TRANSPARENT)
;Section1 Tab
$tab_01 = GUICtrlCreateTabItem("section 1")
GUICtrlCreateLabel("Choose either", 20, 40, 310, 20)
$group_1 = GUICtrlCreateGroup("Select the following", 20, 70, 270, 170)
$CheckBoxes1 = GUICtrlCreateCheckbox("prog1", 35, 90, 90, 20)
$CheckBoxes2 = GUICtrlCreateCheckbox("prog2", 35, 120, 110, 20)
$CheckBoxes3 = GUICtrlCreateCheckbox("prog3", 35, 150, 110, 20)
$CheckBoxes4 = GUICtrlCreateCheckbox("prog4", 35, 180, 90, 20)
$CheckBoxes5 = GUICtrlCreateCheckbox("prog5", 35, 210, 90, 20)
$CheckBoxes6 = GUICtrlCreateCheckbox("prog6", 185, 90, 80, 20)
$CheckBoxes7 = GUICtrlCreateCheckbox("prog7", 185, 120, 80, 20)
$CheckBoxes8 = GUICtrlCreateCheckbox("prog8", 185, 150, 80, 20)
$CheckBoxes9 = GUICtrlCreateCheckbox("prog9", 185, 180, 80, 20)
$CheckBoxes10 = GUICtrlCreateCheckbox("prog10", 185, 210, 100, 20)
$RUN = GUICtrlCreateButton("Run",210, 260, 80, 25)
$group_2 = GUICtrlCreateGroup("Select the following", 20, 300, 270, 100)
$log2 = GUICtrlCreateButton("section2", 35, 320, 80, 25)
$log3 = GUICtrlCreateButton("section3", 185, 320, 80, 25)
$log4 = GUICtrlCreateButton("section4", 35, 360, 80, 25)

;Section2 Tab
$tab_02 = GUICtrlCreateTabItem("section 2")
GUICtrlCreateLabel("Choose either", 20, 40, 310, 20)
$group_3 = GUICtrlCreateGroup("Select the following", 20, 70, 270, 170)
$CheckBoxes1 = GUICtrlCreateCheckbox("prog1", 35, 90, 90, 20)
$CheckBoxes2 = GUICtrlCreateCheckbox("prog2", 35, 120, 110, 20)
$CheckBoxes3 = GUICtrlCreateCheckbox("prog3", 35, 150, 110, 20)
$CheckBoxes4 = GUICtrlCreateCheckbox("prog4", 35, 180, 90, 20)
$CheckBoxes5 = GUICtrlCreateCheckbox("prog5", 35, 210, 90, 20)
$CheckBoxes6 = GUICtrlCreateCheckbox("prog6", 185, 90, 80, 20)
$CheckBoxes7 = GUICtrlCreateCheckbox("prog7", 185, 120, 80, 20)
$CheckBoxes8 = GUICtrlCreateCheckbox("prog8", 185, 150, 80, 20)
$CheckBoxes9 = GUICtrlCreateCheckbox("prog9", 185, 180, 80, 20)
$CheckBoxes10 = GUICtrlCreateCheckbox("prog10", 185, 210, 100, 20)
$RUN1 = GUICtrlCreateButton("Run",210, 260, 80, 25)
$group_4 = GUICtrlCreateGroup("Select the following", 20, 300, 270, 100)
$log1 = GUICtrlCreateButton("section1", 35, 320, 80, 25)
$log3 = GUICtrlCreateButton("section3", 185, 320, 80, 25)
$log4 = GUICtrlCreateButton("section4", 35, 360, 80, 25)

GUISetState()

Do
    $msg = GUIGetMsg()

$status1 = GUICtrlRead($CheckBoxes1)
$status2 = GUICtrlRead($CheckBoxes2)
$status3 = GUICtrlRead($CheckBoxes3)
$status4 = GUICtrlRead($CheckBoxes4)
$status5 = GUICtrlRead($CheckBoxes5)
$status6 = GUICtrlRead($CheckBoxes6)
$status7 = GUICtrlRead($CheckBoxes7)
$status8 = GUICtrlRead($CheckBoxes8)
$status9 = GUICtrlRead($CheckBoxes9)
$status10 = GUICtrlRead($CheckBoxes10)
Until $msg = $EXIT or $msg = $RUN or $msg = $RUN1

If $msg = $EXIT then Exit

IF $status1 = 1 then call ("APP_1")
IF $status2 = 1 then call ("APP_2")
IF $status3 = 1 then call ("APP_3")
IF $status4 = 1 then call ("APP_4") 
IF $status5 = 1 then call ("APP_5") 
IF $status6 = 1 then call ("APP_6") 
IF $status7 = 1 then call ("APP_7") 
IF $status8 = 1 then call ("APP_8") 
IF $status9 = 1 then call ("APP_9") 
IF $status10 = 1 then call ("APP_10")   

;Add Application Functions here
Func APP_1() ;Function for application 1
    MsgBox(4096,"App 1","This is where Application 1 would run")
EndFunc


Func APP_2();Function for application 2
    MsgBox(4096,"App 2","This is where Application 2 would run")
EndFunc


Func APP_3();Function for application 3
    MsgBox(4096,"App 3","This is where Application 3 would run")
EndFunc


Func APP_4();Function for application 4
    MsgBox(4096,"App 4","This is where Application 4 would run")
EndFunc


Func APP_5();Function for application 5
    MsgBox(4096,"App 5","This is where Application 5 would run")
EndFunc

Func APP_6();Function for application 6
    MsgBox(4096,"App 6","This is where Application 6 would run")
EndFunc

Func APP_7();Function for application 7
    MsgBox(4096,"App 7","This is where Application 7 would run")
EndFunc

Func APP_8();Function for application 8
    MsgBox(4096,"App 8","This is where Application 8 would run")
EndFunc

Func APP_9();Function for application 9
    MsgBox(4096,"App 9","This is where Application 9 would run")
EndFunc

Func APP_10();Function for application 10
    MsgBox(4096,"App 10","This is where Application 10 would run")
EndFunc

In Section1 tab, when I check any of those checkboxes and when I click on "Run" button, I want it to perform certain task only for Section1 tab. Now, when I go to Section2 tab, I want it to perform certain task only for Section2 tab. Same for the three buttons in each tab. BTW, those checkboxes should all be the same files. It's just that I want a function that will do something different on each tab that involves the same files. I know that your time and knowledge is valuable, so whenever you can drop a line I would really appreciate it. Thanks.

Link to comment
Share on other sites

Hello again. I'm trying to figure how to code each tab to have different functions. Let me post the code so that you can see what I'm talking about:

#include <GUIConstants.au3>

Opt("TrayIconDebug", 1)

GUICreate("Program Name", 310, 500, -1, -1)
$lucida = "Lucida Sans Unicode"
$tahoma_Bold = "Tahoma Bold"
$tnr_Bold = "Times New Roman Bold"
$exit = GUICtrlCreateButton("Exit", 210, 450, 80, 25)
GUICtrlCreateTab(5, 5, 300, 490, $WS_EX_TRANSPARENT)
;Section1 Tab
$tab_01 = GUICtrlCreateTabItem("section 1")
GUICtrlCreateLabel("Choose either", 20, 40, 310, 20)
$group_1 = GUICtrlCreateGroup("Select the following", 20, 70, 270, 170)
$CheckBoxes1 = GUICtrlCreateCheckbox("prog1", 35, 90, 90, 20)
$CheckBoxes2 = GUICtrlCreateCheckbox("prog2", 35, 120, 110, 20)
$CheckBoxes3 = GUICtrlCreateCheckbox("prog3", 35, 150, 110, 20)
$CheckBoxes4 = GUICtrlCreateCheckbox("prog4", 35, 180, 90, 20)
$CheckBoxes5 = GUICtrlCreateCheckbox("prog5", 35, 210, 90, 20)
$CheckBoxes6 = GUICtrlCreateCheckbox("prog6", 185, 90, 80, 20)
$CheckBoxes7 = GUICtrlCreateCheckbox("prog7", 185, 120, 80, 20)
$CheckBoxes8 = GUICtrlCreateCheckbox("prog8", 185, 150, 80, 20)
$CheckBoxes9 = GUICtrlCreateCheckbox("prog9", 185, 180, 80, 20)
$CheckBoxes10 = GUICtrlCreateCheckbox("prog10", 185, 210, 100, 20)
$RUN = GUICtrlCreateButton("Run",210, 260, 80, 25)
$group_2 = GUICtrlCreateGroup("Select the following", 20, 300, 270, 100)
$log2 = GUICtrlCreateButton("section2", 35, 320, 80, 25)
$log3 = GUICtrlCreateButton("section3", 185, 320, 80, 25)
$log4 = GUICtrlCreateButton("section4", 35, 360, 80, 25)

;Section2 Tab
$tab_02 = GUICtrlCreateTabItem("section 2")
GUICtrlCreateLabel("Choose either", 20, 40, 310, 20)
$group_3 = GUICtrlCreateGroup("Select the following", 20, 70, 270, 170)
$CheckBoxes1 = GUICtrlCreateCheckbox("prog1", 35, 90, 90, 20)
$CheckBoxes2 = GUICtrlCreateCheckbox("prog2", 35, 120, 110, 20)
$CheckBoxes3 = GUICtrlCreateCheckbox("prog3", 35, 150, 110, 20)
$CheckBoxes4 = GUICtrlCreateCheckbox("prog4", 35, 180, 90, 20)
$CheckBoxes5 = GUICtrlCreateCheckbox("prog5", 35, 210, 90, 20)
$CheckBoxes6 = GUICtrlCreateCheckbox("prog6", 185, 90, 80, 20)
$CheckBoxes7 = GUICtrlCreateCheckbox("prog7", 185, 120, 80, 20)
$CheckBoxes8 = GUICtrlCreateCheckbox("prog8", 185, 150, 80, 20)
$CheckBoxes9 = GUICtrlCreateCheckbox("prog9", 185, 180, 80, 20)
$CheckBoxes10 = GUICtrlCreateCheckbox("prog10", 185, 210, 100, 20)
$RUN1 = GUICtrlCreateButton("Run",210, 260, 80, 25)
$group_4 = GUICtrlCreateGroup("Select the following", 20, 300, 270, 100)
$log1 = GUICtrlCreateButton("section1", 35, 320, 80, 25)
$log3 = GUICtrlCreateButton("section3", 185, 320, 80, 25)
$log4 = GUICtrlCreateButton("section4", 35, 360, 80, 25)

GUISetState()

Do
    $msg = GUIGetMsg()

$status1 = GUICtrlRead($CheckBoxes1)
$status2 = GUICtrlRead($CheckBoxes2)
$status3 = GUICtrlRead($CheckBoxes3)
$status4 = GUICtrlRead($CheckBoxes4)
$status5 = GUICtrlRead($CheckBoxes5)
$status6 = GUICtrlRead($CheckBoxes6)
$status7 = GUICtrlRead($CheckBoxes7)
$status8 = GUICtrlRead($CheckBoxes8)
$status9 = GUICtrlRead($CheckBoxes9)
$status10 = GUICtrlRead($CheckBoxes10)
Until $msg = $EXIT or $msg = $RUN or $msg = $RUN1

If $msg = $EXIT then Exit

IF $status1 = 1 then call ("APP_1")
IF $status2 = 1 then call ("APP_2")
IF $status3 = 1 then call ("APP_3")
IF $status4 = 1 then call ("APP_4") 
IF $status5 = 1 then call ("APP_5") 
IF $status6 = 1 then call ("APP_6") 
IF $status7 = 1 then call ("APP_7") 
IF $status8 = 1 then call ("APP_8") 
IF $status9 = 1 then call ("APP_9") 
IF $status10 = 1 then call ("APP_10")   

;Add Application Functions here
Func APP_1() ;Function for application 1
    MsgBox(4096,"App 1","This is where Application 1 would run")
EndFunc
Func APP_2();Function for application 2
    MsgBox(4096,"App 2","This is where Application 2 would run")
EndFunc
Func APP_3();Function for application 3
    MsgBox(4096,"App 3","This is where Application 3 would run")
EndFunc
Func APP_4();Function for application 4
    MsgBox(4096,"App 4","This is where Application 4 would run")
EndFunc
Func APP_5();Function for application 5
    MsgBox(4096,"App 5","This is where Application 5 would run")
EndFunc

Func APP_6();Function for application 6
    MsgBox(4096,"App 6","This is where Application 6 would run")
EndFunc

Func APP_7();Function for application 7
    MsgBox(4096,"App 7","This is where Application 7 would run")
EndFunc

Func APP_8();Function for application 8
    MsgBox(4096,"App 8","This is where Application 8 would run")
EndFunc

Func APP_9();Function for application 9
    MsgBox(4096,"App 9","This is where Application 9 would run")
EndFunc

Func APP_10();Function for application 10
    MsgBox(4096,"App 10","This is where Application 10 would run")
EndFunc

In Section1 tab, when I check any of those checkboxes and when I click on "Run" button, I want it to perform certain task only for Section1 tab. Now, when I go to Section2 tab, I want it to perform certain task only for Section2 tab. Same for the three buttons in each tab. BTW, those checkboxes should all be the same files. It's just that I want a function that will do something different on each tab that involves the same files. I know that your time and knowledge is valuable, so whenever you can drop a line I would really appreciate it. Thanks.

Haven't tried your code but it won't work as it is.

I suggest that you have arrays for the check boxes, buttons etc. At the moment you are giving the check boxes on tab 2 the same names as the ones on tab1 so you can then never find out the state of the items on the first tab.

Have an array for each control type. Say you want 10 checkboxes on each tab, and you want 5 tabs. Then do something like this

DIm chbx[5][10]

Dim$tabs[5],$runbt[5]

$Tab1 = GUICtrlCreateTab(5, 5, 300, 490, $WS_EX_TRANSPARENT)

for $tt = 0 to 4;for each tab

$tab[0] = GUICtrlCreateTabItem("section " & $tt + 1)

for $t = 0 to 10; make the checkboxes

$chbx[$tt][$t] = GUICtrlCreateCheckbox("prog" & $t + 1, some value,some value + K * $t,etc,etc)

next

$runbt[$tt] = guictrlctreatebutton(.....)

next;next tab

GUICtrlCreateTabitem ("") ;don't forget to end tab

;Then have your while loop, but no need to keep reading the checkboxes.

while 1

$msg = GUIGetMsg()

for $t = 0 to 4

if $msg = $runbt[$t] then exitloop

next

wend

;first find out what tab we're on

$tabno = guictrlgetdata($tab1)

for $t = 0 to 4

if $tabno = $tab[$t] then

$tabno = $t;this is the tabitem we were on

exitloop

next

for $t = 0 to 10

if Guictrlread($chbx[$tabno][$t] = $GUI_ChECKED then call("APP_" & $t + 1)

next

Lots of code missing but the basic message is that if you use arrays you will save a lot of effort, space,time, problems and you'll probably live longer too.

Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script.
Link to comment
Share on other sites

Martin, thanks for your quick reponse. I really do appreciate you taking your time and helping me with this code. One question, is there a better tutorial on arrays in AutoIt other than the Help file?

I don't know of a good place to find out about arrays. Obviously you could try to search for things like 'understanding arrays' and so on but you might find that the explanations are with reference to a particular language other than AutoIt which might not help.

I remember that understanding arrays was one of the first things I did when I learned to program and I think I found it quite difficult at first, but even a for next loop seemed quite difficult to me then.

The best way in my opinion is to see how an array is used somewhere and try things out, play with it and if it doesn't work try to figure out why not.

There are lots of things everyone uses every day without realising it and it is only when someone puts a technical name to it that we think we don't know anything about it but actually we often do. For example, most people would say that they had no idea how to deal with different number bases. Yet they can tell you the time and date, how heavy they are and how tall, all of which use different number bases. The reason I say this is because I think that if you can relate a new concept to something you already deal with then suddenly it's no big deal.

So getting back to arrays,( and I apologise if I'm overdoing this, but I'm proceeding on the basis that you don't understand them at all) .. getting back to arrays, we deal with them all the time without a thought. We just don't call them arrays.

For example, could you find page 37 on the second book from the left on the third shelf up from the floor?

If you can then you're dealing with arrays.

Start with the shelves. There's one set of shelves but there are 4 individual shelves. Shelf1, shelf2 etc But we don't want to write all that so we can say self 3 is shelf[3] (We'll ignore the fact that we might number from 0 for the moment. So shelf n is shelf[n]. We can sort our book shelves by having shelf 1 for cooking, shelf 2 for hobbies etc. To deal with this we need

Dim $Shelf[4]

Then we can say at any time $shelf[1] = 'cooking'

Next step is we don't just want to know about the shelves we want to know the books on the shelves as well. We can have a lot of books on each shelf. Maybe shelf 1 has 20 books , shelf 2 has 5. To deal with this we need more information in our array. For each shelf we need the number of books.So we just add an extra dimension

Dim $Books[4][2]

one array called Books because we have one bookshelf. Divided into 4 sets of information because there are 4 shelves, and for each shelf there are 2 things to know= the type of book and the number of books

So $Books[1][1] = cooking (the name the the books on shelf 1)

$Books[1][2] = 30 (there are 30 books on cooking on shelf 1)

I'll just take this 1 step further. We need to know the titles of the books. At this point we can say well we don't need to have more dimensions we just need to expand the amount stored for each shelf because a book name belongs to the shelf. So instead if just having 2 things stored for each shelf we can store 2 + the number of books. If we say there are at most 100 books on a shelf then we can have

$Books[4][102], 4 shelves and 102 things to know about each shelf.

So $Books[1][1] = 'cooking' as before, and

$Books[1][2] = 30 as before but now we can add

$Books[1][3] = 'How to make a Curry in a Hurry' and so on.

And we know we can't look for titles beyond $Books[1][32] because $books[1][2] told us there are only 30 titles.

The way I look at it (not advisable to get too far inside my mind though) a word is an array of characters, a line is an array of words, a page is an array of lines, a book is an array of pages, a shelf is an array of books, a library is an array of shelves.. (I've got a bit carried away here.)

If this helps at all then great but if not don't panic, - I'm a lousy teacher.

Serial port communications UDF Includes functions for binary transmission and reception.printing UDF Useful for graphs, forms, labels, reports etc.Add User Call Tips to SciTE for functions in UDFs not included with AutoIt and for your own scripts.Functions with parameters in OnEvent mode and for Hot Keys One function replaces GuiSetOnEvent, GuiCtrlSetOnEvent and HotKeySet.UDF IsConnected2 for notification of status of connected state of many urls or IPs, without slowing the script.
Link to comment
Share on other sites

  • Moderators

GJ Martin... this question was asked before here http://www.autoitscript.com/forum/index.php?showtopic=29062 and some of the info may be found useful.

Common sense plays a role in the basics of understanding AutoIt... If you're lacking in that, do us all a favor, and step away from the computer.

Link to comment
Share on other sites

Martin, you're an awesome teacher. I got it now. <_< SmOke_N, thanks for the link.

EDIT: I took your approach to this, but I ran into some issues:

#include <GUIConstants.au3>

Dim $chbx[5][10]
Dim $tab[5],$runbt[5]

$ParentWin = GUICreate("Prog Installer", 500, 350, -1, -1)
$Tab1 = GUICtrlCreateTab(5, 5, 490, 340, $WS_EX_TRANSPARENT)
for $tt = 0 to 4 ;for each tab
$tab[0] = GUICtrlCreateTabItem("section " & $tt + 1)
$group_1 = GUICtrlCreateGroup("Select Programs", 15, 40, 150, 240)
for $t = 0 to 10 - 1 ; make the checkboxes
$chbx[$tt][$t] = GUICtrlCreateCheckbox("PROG" & $t + 1, 30,60 + 20 * $t)
next
$runbt[$tt] = guictrlcreatebutton("Run", 15,300,80,25)
next;next tab
GUICtrlCreateTabitem ("") ;don't forget to end tab

GUISetState(@SW_SHOW)

;Then have your while loop, but no need to keep reading the checkboxes.
while 1
$msg = GUIGetMsg()
for $t = 0 to 4
if $msg = $runbt[$t] then exitloop
next
wend

;first find out what tab we're on
$tabno = GUICtrlGetState($Tab1)
for $t = 0 to 4
if $tabno = $tab[$t] then 
$tabno = $t;this is the tabitem we were on
exitloop
endif
next

for $t = 0 to 10 - 1
if Guictrlread($chbx[$tabno][$t]) = $GUI_ChECKED then call("APP_" & $t + 1)
next

Func APP_1() ;Function for application 1
    MsgBox(4096,"App 1","This is where Application 1 would run")
EndFunc
Func APP_2();Function for application 2
    MsgBox(4096,"App 2","This is where Application 2 would run")
EndFunc
Func APP_3();Function for application 3
    MsgBox(4096,"App 3","This is where Application 3 would run")
EndFunc
Func APP_4();Function for application 4
    MsgBox(4096,"App 4","This is where Application 4 would run")
EndFunc
Func APP_5();Function for application 5
    MsgBox(4096,"App 5","This is where Application 5 would run")
EndFunc

Func APP_6();Function for application 6
    MsgBox(4096,"App 6","This is where Application 6 would run")
EndFunc

Func APP_7();Function for application 7
    MsgBox(4096,"App 7","This is where Application 7 would run")
EndFunc

Func APP_8();Function for application 8
    MsgBox(4096,"App 8","This is where Application 8 would run")
EndFunc

Func APP_9();Function for application 9
    MsgBox(4096,"App 9","This is where Application 9 would run")
EndFunc

Func APP_10();Function for application 10
    MsgBox(4096,"App 10","This is where Application 10 would run")
EndFuncoÝ÷ Ùh^!yÉ(Þ¡ûa¢Çç$n^±©ÝrXѺvî¶Ú'ax!j^Â-v¬mq©e¶ºw-ζ«Ë.z+0êÞv)ºÛaxeQ
L"ÎHB-®'¦ëmx"µ¦è½ì!W¥¢[ºØ­rZ,zËaz趦®(!µ¬È    l¢W­ßÛ,k+ajÒ!j÷÷Þ­éí©±ú+y§!¡ûa¢Çç$n^°z0v&jG­«p¢¹¶¸vë"ayú%"î¶+`÷¬æ§zºè­«­¢+Ø¥¹±Õ±ÐíU%
½¹ÍѹÑ̹ÔÌÐì()¥´ÀÌØí¡álÕulÄÁt)¥´ÀÌØí¡álÄÁtôlÅÕ½ÐíÁɽ©ÐÅÕ½Ðì°ÅÕ½Ðí٥ͥ¼ÅÕ½Ðì°ÅÕ½Ðí½¥ÅÕ½Ðì°ÅÕ½Ðí½ÅÕ½Ðì°ÅÕ½ÐíÍÅ°ÅÕ½Ðì°ÅÕ½ÐíÝ¥¹áÀÅÕ½Ðì°ÅÕ½ÐíÕѽ¥ÐÅÕ½Ðì°ÅÕ½ÐíÉÑÁÅÕ½Ðì°ÅÕ½ÐíÁ¡½Ñ½Í¡½ÀÅÕ½Ðì°ÅÕ½ÐìÍ͵àÅÕ½Ðít)¥´ÀÌØíÑlÕt°ÀÌØíÉÕ¹ÑlÕt((ÀÌØíAɹÑ]¥¸ôU%
ÉÑ ÅÕ½ÐíAɽ%¹Íѱ±ÈÅÕ½Ðì°ÔÀÀ°ÌÔÀ°´Ä°´Ä¤(ÀÌØíQÄôU%
Ñɱ
ÉÑQ Ô°Ô°ÐäÀ°ÌÐÀ°ÀÌØí]M}a}QI9MAI9P¤)½ÈÀÌØíÑÐôÀѼÐí½È Ñ(ÀÌØíÑlÁtôU%
Ñɱ
ÉÑQ%Ñ´ ÅÕ½ÐíÍÑ¥½¸ÅÕ½ÐìµÀìÀÌØíÑЬĤ(ÀÌØíɽÕÁ|ÄôU%
Ñɱ
ÉÑɽÕÀ ÅÕ½ÐíM±ÐAɽɵÌÅÕ½Ðì°ÄÔ°ÐÀ°ÄÔÀ°ÈÐÀ¤)½ÈÀÌØíÐôÀѼÄÀ´Äìµ­Ñ¡¡­½áÌ(ÀÌØí¡álÀÌØíÑÑulÀÌØíÑtôU%
Ñɱ
ÉÑ
¡­½à ÀÌØí¡álÀÌØíÑt°ÌÀ°ØÀ¬ÈÀ¨ÀÌØíФ)¹áÐ(ÀÌØíÉÕ¹ÑlÀÌØíÑÑtôÕ¥ÑɱÉÑÕÑѽ¸ ÅÕ½ÐíIÕ¸ÅÕ½Ðì°ÄÔ°ÌÀÀ°àÀ°ÈÔ¤)¹áÐí¹áÐÑ)U%
Ñɱ
ÉÑQ¥Ñ´ ÅÕ½ÐìÅÕ½Ðì¤í½¸ÌäíнÉÐѼ¹Ñ
Edited by speedtrooper
Link to comment
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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...