Navigating the gui hierarchy

my program has a hierarchical menu system:
ie login screen opens-> main menu opens->sub menu-> etc.
They are all extended from JFrames.
What I need help with is, can i navigate "up" the "tree" of the gui?
ie. I need to access the main menu from the sub menu, or even the login screen obj from the sub menu.
Do I need to track references to the other menus? I tried to use the .getParent() method while in the sub menu, but it doesn't seem to be what I'm looking for as it's null.
any pointers would be appreciated.

Well, typically an application has a single main JFrame. If you need to ask for additional information you use a modal dialog to get the information and then close it. That way only a single window is open at a time.
If you need to change the contents of the main frame based on a menu selection then typically you don't create a new frame but instead update the content pane of the frame with you new form. One way to do this to use a [url http://java.sun.com/docs/books/tutorial/uiswing/layout/visual.html]Card Layout.
If you really think you need your hierarchical structure, then when you create the child component you would pass in the parent component as a parameter.

Similar Messages

  • How do you Configure the "Screen Body" of the GUI to Display a Web Page?

    From the first screen in the GUI, I'd like to pull in a live web page to fill the right side of the screen (where the big SAP data graphic sits, next to the left hand navigation).  How is this done?  I've seen the University of Nebraska's GUI and they successfully pull in the front page of their SAP Support Site.  We'd like to do the same.
    Again, we simply want to have that frame of the GUI in teh Screen Body section to display a web page pointed at an absolute URL. Advice?
    Thank you!
    Lee Dudley
    Multnomah County, Oregon

    Hi lee,
    this link should be helpful
    [http://www.synactive.com/tutor_e/lessonv01.html]

  • How to put the product hierarchy in the bw?

    I want to have the product hierarchy in the reporting, in a way, that the users can open and shut the elements of the tree.
    So i added the foreign hierarchy criteria 0PRODH1, 2, 3 to the InfoObject 0MATERIAL.
    Then I used InfoSource 0MATERIAL_LPRH_HIER to put data in 0MATERIAL.
    In the result 0MATERIAL HAS the hierarchy, but without any materials added to the leafs.
    What did i do wrong?
    Tobias

    Hi ,
    Have a look on note: 407033
    It says 2 main points with regarding to your problem.
    1)  Material master records with shared master data in the sales area cannot be assigned to a product hierarchy in BW.
      This solution generates the thinnest possible hierarchy, but leads to some restrictions in the navigation options in the BW queries because you can no longer expand the hierarchy to the material numbers.
    2) The 0PROD_HIER attribute of 0-MATERIAL must be active as a navigation attribute in the cube.When you expand the hierarchies by product hierarchy in the query, you can display this hierarchy.
    With rgds,
    Anil Kuma Sharma .P
    Kindly assign points , if it really helps you.

  • How to find the existing hierarchy variable?

    Dear SAP gurus,
    In this existing query, there is a Cost Element hierarchy variable created. When I run the query (second attempt by refreshing the query selection screen), the Cost Element Node variable field was not available to be changed again. Believe this has to do with the option 'Changeable with query navigation' option in the variable created. I was trying to confirm on this via the variable properties, but I had trouble identifying where it is located, because there are just too many cost element hierarchies available for reporting.
    Anyone can help me? Thank you in advance.
    Regards,
    Adelynn

    HI Nagesh,
    Thanks for your highlight, I found the variable, however, I didnt see any option "Changeable with query navigation" for this hierarchy variable. Any reason for this?
    The issue I am facing was, say, when I run the query for the first time with Cost Element Node 1, and i was trying to change my selection to CE node 2, so I refreshed my variable screen but the field to select CE hierarchy Node was no longer there. Normally this happens to variable that has the option "Changeable with query navigation" unchecked.
    But in this case, I did not see this option for the hierarchy variable used, how do we justify the scenario in this case?
    Please kindly assist, thanks again.
    Regards,
    Adelynn

  • CLD: Do you have to create the GUI from scratch?

    I'm a little confused, because the ATM Machine example instructions seem to imply you're supposed to create the front panel from scratch. It also gave specifications on the Account.txt file.
    However, some posts on this board have led me to believe that a GUI (and even data files) are provided for you ahead of time.
    For people who have actually taken the exam: do I need to practice throwing the GUI together when I run through the practice exams, or should I be copying over the front panel from the solution?
    Thanks.
    http://linkd.in/mikele

    In your exam packet, a USB stick will be provided. The USB stick will have the following:
    A folder hierarchy consisting of two folders: SubVIs and Controls. You must use the folder hierarchy as provided and save your work in these folders.
    The main VI with a fully developed front panel and the associated typedefs saved in the Controls folder. You must utilize the front panel as given. Note: You will have fill in the tips/description for the Controls, the VI documentation and develop a simple icon.
    A data file (.csv or ini) file needed for the application
    We are currently in the process of updating the sample exams to reflect this change. The updated samples will be available in the first week of July.
    Thanks
    Zaki Chasmawala | Certification Development Group Manager | Training & Certification | National Instruments | [email protected]

  • How to show the structure/hierarchy of every Sharepoint Online site as a side bar? (Office365)

    Hi,
    I need to show the structure/hierarchy of every site in my site collection on masterpage (ie. side bar).
    My purpose:
    1. Help user can visualize which sites are they 
    2. User can know what's the parent site & subsite
    3. User can easily navigate from sites to sites.
    Apart from using third party tools( like MySharepoint Sites by QuePort), is there any way to achieve this? Or do you have any other third party tools to recommend?
    Thanks,
    Elliot

    To achieve your goal, the feature of SharePoint Server Publishing Infrastructure needs to be enabled first. The following steps are for your reference:
    1. Open the site collection, click the gear icon in the upper right corner, then click
    Site settings.
    2. On the Site Settings page, click Site collection features
    under Site Collection Administration, locate SharePoint Server Publishing Infrastructure, and click
    Activate.
    3. Go back to the Site Settings page, click Navigation under
    Look and Feel, select Show subsites in the Global Navigation section, and click
    OK.
    4. Go to the sub sites, click the gear icon in the upper right corner->Site settings->Naviagtion-> select
    Show subsites in the Global Navigation section-> click
    OK.
    Or
    1. Click Site Settings.
    2. Click Tree view under Look and Feel.
    3. Select Enable Tree View.
    4. Click OK.
    If this helped you resolve your issue, please mark it Answered

  • Create a Custom Navigation Path / Custom Hierarchy in IDT

    Hi,
    I have a Bex query and hierarchy built on Navigational attributes (In other words Flat Hierarchy) but my users dont like the way hierarchy is set up when we execute the report. Bex query is built on MP. For example, In the Bex query designer I can see my Product dimension and in that dimension I can see various characteristics / nNav attributes which are used to display flat hierarchy in the report when executed.
    I know we can customize the hierarchy in IDT as a custom navigation path.
    My question is that Is it possible to use Bex query as a source for universe in IDT and then achieve this customize hierarchy objective OR Can I directly use the Bex query for Webi interface and still customize the hierarchy like Custom Navigation path.
    Can I see my Navigational attributes of Bex query in the universe (IDT) OR Webi as dimension so I can use them for custom navigation path.
    We are using BOBJ 4.1 SP 1
    Thank you
    NI

    Hi,
    you can build a Universe on a BEx Query to leverage the OLAP functionalities. You can create a relational Universe on top of a BEx Query but this is not really recommended.
    I would highly recommended you connect WebI directly to your BEx Query using the BICS interface. With the BICS interface we support more BEx Elements as via the relational Universe.
    Regards
    -Seb.

  • Navigation Pane Icons / Hierarchy

    Hi All,
    I have an issue with my Acrobat Pro version 9.5.5. I am running a 13 inch Macbook Pro with Retina Display with OS X version 10.10.2. When I display the Navigation Pane, the traingular icons for navigating the hierarchy are massive. The associated text next to the icon looks like it has reserved a large amount of space as well even though the icon for the content type and the text itself is very small.
    Is this a font issue? I couldn't find anything in the settings to stop this effect. It is making it impossible to navigate the content.
    Any help would be greatly appreciated.
    Thanks heaps,
    Daniel.

    Hi Daniel ,
    As you are using an older version of Acrobat .
    I would suggest you to try an update and see if this gets fixed.
    Launch Acrobat>Navigate to Help>Check for updates .
    You may also want to repair your Acrobat .
    Let us know how it goes .
    Regards
    Sukrit Dhingra

  • Unable to enter a Division for which I have proper credentials, via the GUI

    I have a Division which I am unable to enter, either as a student or as the full site Administrator, from the GUI.
    When I log into the main Site page, I see the link for the Division (as I should - I have DOWNLOAD permissions for the Division). However when I click the link (the thumbnail image) I am always, 100% of the time, rejected and sent to the login page. Ignoring that, I still have all of my proper credentials and may continue to freely access other parts of the site.
    In the past, I had this exact behavior on (1) a Division "RobotCourses:PSYC" (Psychology), and (2) my main site breadcrumb, which appears at the top of the site page to the right of the "iTunes U" breadcrumb and says "Maiko Covington @ University of Illinois..." For reasons completely unknown to me, this behavior resolved itself yesterday, clicking both of those objects works as expected, although NO one at our site with any edit access did anything on the server.
    However, the same behavior has now reappeared, this time on a Division "RobotCourses:CLCV" (Classical Civilizations). Again, I have not done any editing of that Division, nor had anyone logged into it (these Divisions are in a test area where I am developing automation tools).
    I am, quite frankly, stumped. But I've done some investigation.
    SETUP:
    The Division has identity "RobotCourses:CLCV".
    This Division contains a single Course with identity "RobotCourses:CLCV:CLCV115:CLCV115All-13564".
    Both the Division and the Course are restricted to properly registered academic students. I have developed automation code in a login portal which grants credentials for RobotCourses:CLCV to students registered for courses in the CLCV department (Classical Civilizations) and credentials for RobotCourses:CLCV:CLCV115:CLCV115All-13564 to students registered for CLCV 115 (Classical Civilizations 115 - Mythology of Greece and Rome) specifically.
    The Permissions set on RobotCourses:CLCV in particular are:
    <Permission>
    <Credential>Authenticated@urn:mace:itunesu.com:sites:illinois.edu</Credential>
    <Access>No Access</Access>
    </Permission>
    <Permission>
    <Credential>gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV</C redential>
    <Access>Download</Access>
    </Permission>
    The point is to deny access to Authenticated@ (merely authenticated students) and then specifically grant it for people given a "gakusei" credential for RobotCourses:CLCV in particular.
    (Note here that "gakusei" is a Japanese word meaning "student," I am using it in my credentials to ensure that my credentials and permissions are not affected by other credentials named "student" set at upper levels and used by some live users of the site, as we do not have a segregated development environment. It is our lowest level of access beyond mere Authenticated@..., designed to give students access to download and "surf to" Divisions and Courses.)
    *LOGIN: ISSUING CREDENTIALS:*
    The login portal code works successfully, and so when a student "Jane Doe" logs in, she is in fact given appropriate credentials (as she is actually registered for CLCV 115 here at UIUC). From the code generating her login URL, I see:
    Issued credentials:
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV:CLCV115:CLCV1 15All-13564
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT:STAT100:STAT1 00X1-13570
    (You can see she is also registered for STAT 100).
    With the default login URL thus generated, she is taken to the top level of the Site in iTunes, and in fact sees thumbnail links for both STAT (Statistics) and CLCV (Classical Civilizations). Clicking on STAT takes her to the STAT Division where she can then enter the Course STAT 100 with no problems.
    *PROBLEM: CAN'T GET TO CLCV FROM THE MAIN PAGE IN THE GUI*
    HOWEVER! Clicking on CLCV brings up the login page. If she ignores the login page, she can still access the rest of the site, including STAT, just fine. Logging in again (reissuing her credentials) does not help the situation.
    Note that this is not a problem only for Jane Doe, the same thing happens for anyone in CLCV and in fact happens for me as Administrator of the whole site with full access, even.
    *ACCESS DIRECTLY TO THE DIVISION BY URL WORKS*
    With a slight modification to the login to allow access directly to the RobotCourses:CLCV Division (by adding the handle of the Division to the end of the location), credentials are issued exactly as before:
    Issued credentials:
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV:CLCV115:CLCV1 15All-13564
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT
    gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT:STAT100:STAT1 00X1-13570
    and she is taken to the Division page, SUCCESSFULLY. So, it seems she actually HAS access, as expected.
    *ACCESS CONFIRMED WITH DEBUGGING:*
    Writing some code to generate not the actual login URL but rather a link that takes me to an "iTunes U Access Debugging" page for the Division (figured this out by reading some other posts! :)) I am taken to a page with the following:
    (at generated URL https://deimos.apple.com/WebObjects/Core.woa/Browse/illinois.edu.1945806043/xxx5 64?credentials=....)
    Received
    Destination illinois.edu.1945806043
    Identity "Jane X Doe" <[email protected]> (jxdoe) [xxxxxxxxx]
    Credentials gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV; ​ gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV:CLCV115:CLCV1 15All-13564; ​gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT;​ gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT:STAT100:STAT1 00X1-13570
    Time 1236877947
    Signature 42ccef92a3298684a7a09eed45adb6b788a700c01645b8b423d33ace120650b0
    Analysis
    The destination string is valid and the corresponding destination item was found.
    The identity string is valid and provides the following information:
    Display Name Jane X Doe
    Email Address [email protected]
    Username jxdoe
    User Identifier xxxxxxxxx
    The credential string is valid and contains the following 4 recognized credentials:
    1. gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV
    2. gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:CLCV:CLCV115:CLCV1 15All-13564
    3. gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT
    4. gakusei@urn:mace:itunesu.com:sites:illinois.edu:RobotCourses:STAT:STAT100:STAT1 00X1-13570
    The time string is valid and corresponds to 2009-03-12 17:12:27Z.
    The signature string is valid.
    Access
    Because the received signature and time were valid, the received identity and credentials were accepted by iTunes U.
    In addition, the following 2 credentials were automatically added by iTunes U:
    1. All@urn:mace:itunesu.com:sites:illinois.edu
    2. Authenticated@urn:mace:itunesu.com:sites:illinois.edu
    With these credentials, you have browsing and downloading access to the requested destination.
    (In case you think to check the sums, be aware I've actually changed the student's name for this example.)
    So, as expected, I have access, in fact the student DOES have access, visiting the Division page directly (specifiying its handle as part of the desired location).
    *IT'S ONLY CLICKING THE THUMBNAIL ON THE MAIN PAGE THAT BREAKS*
    Because the problem is only apparent when clicking the icon for the Division on the main Site page, I have no way (that I know of) to get any information about precisely WHAT is going on, what possibly differs in the GUI-click situation from the "generate me a URL that takes me right there" situation.
    At that point I'm fully in the GUI, I'm not sending anything via web services, so I have no idea how I can proceed to debug this from here.
    I'm also quite confused at the sudden appearance of this behavior, and the disappearance of this behavior from RobotCourses:PYSC, another Division that was broken in this same way all last week but which magically resumed allowing me access yesterday.
    Any suggestions, hints, or advice would be very welcome. Has anyone else even seen behavior similar to this?
    Thanks for any information you might have.

    Maiko,
    I'm confess I'm still trying to get a handle on your problem. You do a fantastic job of describing it ... but I'm just trying to picture it accurately in my head.
    I think, were I in your shoes, I'd begin by looking at what the debug page has to say for the specific destination in which you're interested in fixing. In other words, I'm not clear on where, exactly, this destination points ...
    Destination illinois.edu.1945806043
    Is that your site, or the division within your site that you want to fix? "Normally", you do not need to specify a site handle to get to your site within your transfer CGI ... if you say "uillinois.edu", it's enough to transfer your users to iTunes U ... but every site still has a handle, and you could, if you wanted to, actually specify it in your transfer CGI. For example, this:
    Destination uic.edu.1139051993
    is for my entire site ... it's my site handle. Whereas this:
    Destination uic.edu.1991288441
    is for a division within my site ... but it's impossible to tell the difference between "site" and "division" from just the handle (I mean, if I didn't say "this is a site" and "this is a division", there'd be no way for you to know). So when I look at your creds and permissions on your debug page, I can't quite tell if they give you download access for your site, or for the specific division you want to fix. If you could open the debug page with your division as destination (or confirm that that's what we're looking at), it'd rule out some things.

  • Need Help to update the labels in the GUI syncronously - Swing application

    Hello everyone,
    I need some help regarding a swing application. I am not able to syncronously update the counters and labels that display on my Swing GUI as the application runs in the background. But when the running of application is completed, then the labels on the GUI are getting updated, But I want update the labels and counters on the GUI syncronously as the code executes... below I am giving the format of the code I have written..............
    public class SwingApp extends JFrame{
            // here i have declared the label and component varibles like...
                      private JTextField startTextField;
           private JComboBox maxComboBox;
           private JTextField logTextField;
           private JTextField searchTextField;
           private JLabel imagesDownloaded1;
           private JLabel imagesDownloaded2;
           private JLabel imagesDidnotDownload1;
           private JLabel imagesDidnotDownload2;
                      private JButton startButton;
    //now in the constructer.............
    public Swing(){
    //I used gridbaglayout and wrote the code for the GUI to appear....
    startButton = new JButton("Start Downloading");
        startButton.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            try{
                 actionSearch();   //actionSearch will contain all the code and the function calls of my application...........
            }catch(Exception e1){
                 System.out.println(e1);
        constraints = new GridBagConstraints();
        constraints.gridwidth = GridBagConstraints.REMAINDER;
        constraints.insets = new Insets(5, 5, 5, 5);
        layout.setConstraints(startButton, constraints);
        searchPanel.add(startButton);
    //update is a function which initiates a thread which updates the GUI. this function will be called to pass the required variables in the application
    public void update(final int count_hits, final int counter_image_download1, final int didnot_download1) throws Exception{
         Thread thread = new Thread(new Runnable() {
             public void run() {
                  System.out.println("entered into thread");
                  System.out.println("the variable that has to be set is " + count_hits);
                  server_hits_count.repaint(count_hits);
                  server_hits_count.setText( " "+ Integer.toString(count_hits));
                  imagesDownloaded2.setText(" " + Integer.toString(counter_image_download1));
                  imagesDidnotDownload2.setText(" " + Integer.toString(didnot_download1));
                  repaint();
         //this.update(count_hits);
         thread.start();
    //Now in main............................
    public static void main(String[] args){
    Swing s = new Swing();
    s.setVisible(true);
    }//end of main
    }//end of class SwingAbove I have given the skeleton code of my application........ Please tell me how to update the GUI syncronously...
    Please its a bit urgent...............
    Thank you very much in advance
    chaitanya

    First off, note that this question should have been posted in the Swing section.
    GUI events run in a separate thread (the AWT / Event Dispatch Thread) than your program.
    You should be invoking AWT/Swing events via SwingUtilities.invokeLater().
    If for whatever reason you want to have the program thread wait for the event to process
    you can use invokeAndWait().
    http://java.sun.com/javase/6/docs/api/javax/swing/SwingUtilities.html

  • Creating a connection between the GUI and a program's back end

    I have created a program (over 50 classes) and am currently a little confused as to how I should connect the back end of my program (the real functionality) to my front end (the GUI). Currently I am thinking about using a list of event listeners in my back end that will announce when certain events have completed and thus front end can handle the updates accordingly.
    But I want to ensure that the back end doesn't "know" about the front end. In other words, I would like to ensure that the back end and the front end are as independent/modular as possible.
    Can anyone make some suggestions besides event listeners?
    Thanks,
    Timmers

    From what I am able to ascertain from your post, you would advocate using EventListeners in the back end (in same VM) to inform the GUI of changes?
    Is this the commonly accepted way of communicating your back end functionality to your front-end (GUI)?
    I've read that all EventListeners are part of a single thread. So what happens if two events occur simulataneously in the back-end. Do those events get queued or do some of them get lost?
    Thanks,
    Tim
    If the back-end changes state asynchronously to the
    front-end GUI (ie does work in background threads and
    then notifies the front-end when something happens),
    then you should make it send events when this happens.
    The basic concept is the same for CORBA, RMI, JINI,
    or running everything in the local VM.
    To do this you define a set of events (or maybe you
    can use the java.beans.PropertyChangeEvent) and
    listener interfaces. The front-end then registers to
    receive events (probably via an addXXXListener()
    method in the back-end). You would have to have a
    class (or classes) in the front-end that implemented
    the event listener interfaces to receive the events.
    If you are using a distributed technology (CORBA, RMI,
    JINI, ...) the concept is the same, but the event
    mechanisms are slightly different.
    To notify the back-end of state changes in the
    front-end you probably can just do plain old method
    calls from the front-end to the back-end.

  • How to create a user account by mirroring another account in PowerShell (Trying to learn to use Powshell for some daily AD tasks intead of the GUI)

    Hi,
    I am trying to create user accounts via PowerShell instead of the Gui in server 2008 R2 (PowerShell 2.0).
    I know how to create a user account with the following Power Shell command below is one from a dummy domain I created to practice.
    PS C:\Users\Administrator> New-ADUser -SamAccountName "TestOut" -UserPrincipalNa
    me "[email protected]" -GivenName "Test" -Surname "out" -DisplayName "Testou
    t" -Name "Testout" -Enabled $true -Path "CN=users,DC=bwcat,DC=net,DC=int" -Accou
    ntPassword (Read-Host -AsSecureString "Enter Account Password") 
    However when doing day to day tasks where I work normally we have a new hire, they contact IT and ask that a user account is created.   I will ask who they would like to mirror.
    I then would go into the gui pull up the user that they want to mirror right click him and choose copy.  This would create a new user account that I would then fill out.
    I am wondering if its possible to do this same thing via PowerShell, or  if its not an option because it takes more work type up everything than it does to go into the gui and do it.
    Anyway thanks for the help.

    Hi Wilder, hi Mark,
    first of all: The tutorial sources Mark posted - especially the book "Powershell 3 in A month of lunches" - are good to get a baseline start. A really great reference, especially when you try to learn it while still dealing with your daily business.
    On another note, Wilder: While I fully agree that learning things sequentially is usually the best, I too jumped right in instead of learning how to walk first (though it's been some time now. Fewer years than you'd think, but still ...). So I thought I'd
    give you a little aid with that function husk, so you could just stuff interesting bits into an available structure, making use of the fun tools in a useful context (It's fun fiddling around with the commands, but if you have to type in all of them manually
    each time, using the GUI is often just faster. Doing fun things and being efficient with it feels even better though ...). So ... while I
    do agree with yourself, learn it the Correct & Proper Way, I also do
    intend to finish this little explanation about the husk, all the way to the end.
    Everything below this paragraph is part of this.
    function Copy-ADUser
    <#
    .SYNOPSIS
    A brief description of the Copy-ADUser function.
    .DESCRIPTION
    A detailed description of the Copy-ADUser function.
    .PARAMETER GivenName
    A description of the GivenName parameter.
    .PARAMETER Surname
    A description of the Surname parameter.
    .PARAMETER Template
    A description of the Template parameter.
    .EXAMPLE
    PS C:\> Copy-ADUser -GivenName "Max" -Surname "Mustermann" -Template "Jonny.Normal"
    .NOTES
    Additional information about the function.
    #>
    [CmdletBinding()]
    Param (
    [Parameter(Mandatory = $true)]
    [string]
    $Surname,
    [Parameter(Mandatory = $true)]
    [string]
    $GivenName,
    [Parameter(Mandatory = $true)]
    [string]
    $Template
    ) # Create finished Strings
    $JoinedName = $GivenName + "." + $Surname
    # Create new User
    $NewUser = New-ADUser -Surname $Surname -GivenName $GivenName -DisplayName "$Surname, $GivenName" -SamAccountName $JoinedName -Name "$Surename, $GivenName" -PassThru
    # Copy from old User
    $NewUser | Add-ADPrincipalGroupMembership -MemberOf (Get-ADPrincipalGroupMembership $Template | Where { $_.Name -ne 'Domain Users' })
    # Do Whatever else you feel like doing
    This is again the same function husk I posted earlier. Only this time, I filled a little logic (the pieces that were already posted in this thread). This time, I'll not only go over each part again ... I'll do it by reposting the segments and trying to show
    some examples on how to modify the parts. Thus some of it will be repetitive, but this way all the info is in one spot.
    Segment: Comment Based Help
    <#
    .SYNOPSIS
    A brief description of the Copy-ADUser function.
    .DESCRIPTION
    A detailed description of the Copy-ADUser function.
    .PARAMETER GivenName
    A description of the GivenName parameter.
    .PARAMETER Surname
    A description of the Surname parameter.
    .PARAMETER Template
    A description of the Template parameter.
    .EXAMPLE
    PS C:\> Copy-ADUser -GivenName "Max" -Surname "Mustermann" -Template "Jonny.Normal"
    .NOTES
    Additional information about the function.
    #>
    That's the premier documentation part of a function, that teaches a user what the function does and how to use it. It's what's shown when using the Get-Help cmdlet.
    Comment texts are not restricted to single lines however. For example you could replace ...
    .EXAMPLE
    PS C:\> Copy-ADUser -GivenName "Max" -Surname "Mustermann" -Template "Jonny.Normal"
    ... with ...
    .EXAMPLE
    PS C:\> Copy-ADUser -GivenName "Max" -Surname "Mustermann" -Template "Jonny.Normal"
    Creates a new user named Max Mustermann and copies the group memberships of the already existing user Jonny Normal to this new User
    ... and get an explanation on what the example does when using Get-Help with the
    -Detailed parameter (Explaining examples is always a good idea).
    Segment: Parameter
    [CmdletBinding()]
    Param (
    [Parameter(Mandatory = $true)]
    [string]
    $Surname,
    [Parameter(Mandatory = $true)]
    [string]
    $GivenName,
    [Parameter(Mandatory = $true)]
    [string]
    $Template
    This is the segment that tells Powershell what input your function accepts. Each parameter of Copy-ADUser you set will be available in the next segment as a variable of the same name. You can add additional parameters if you need more information for your
    logic. For example, let's add a parameter that allows you to specify what Organization the new user should belong to:
    [CmdletBinding()]
    Param (
    [Parameter(Mandatory = $true)]
    [string]
    $Surname,
    [Parameter(Mandatory = $true)]
    [string]
    $GivenName,
    [string]
    $Organization,
    [Parameter(Mandatory = $true)]
    [string]
    $Template
    That's how that would look like. You may notice that I didn't add the line with
    "[Parameter(Mandatory = $true)] this time. This means you
    may add the Organization parameter when calling Copy-ADUser, but you need not.
    Segment: Logic
    # Create new User
    $NewUser = New-ADUser -Surname $Surname -GivenName $GivenName -DisplayName "$Surname, $GivenName" -SamAccountName "$GivenName.$Surename" -Name "$Surename, $GivenName" -PassThru
    # Copy from old User
    $NewUser | Add-ADPrincipalGroupMembership -MemberOf (Get-ADPrincipalGroupMembership $Template | Where { $_.Name -ne 'Domain Users' })
    # Do Whatever else you feel like doing
    This is the part of the function that does the actual work. Compared to the first husk I posted, this time there are two commands in it (and some comments). First, I create a new user, using the information passed into
    the parameters -Surname and -GivenName. Then I Copy the group memberships of the user identified by the information given by the
    -Template parameter.
    So, let's modify it!
    # Tell the user you are starting
    Write-Host "Starting to create the user account for $GivenName $Surname"
    # Create new User
    $NewUser = New-ADUser -Surname $Surname -GivenName $GivenName -DisplayName "$Surname, $GivenName" -SamAccountName "$GivenName.$Surename" -Name "$Surename, $GivenName" -PassThru
    # Tell the user you are copying Group Memberships
    Write-Host "Copying the group-memberhips of $Template to $GivenName $Surname"
    # Copy from old User
    $NewUser | Add-ADPrincipalGroupMembership -MemberOf (Get-ADPrincipalGroupMembership $Template | Where { $_.Name -ne 'Domain Users' })
    # Do Whatever else you feel like doing
    Now after adding a few lines, the logic will tell us what it's doing (and do so before it
    is taking action)!
    Hm ... didn't we create a change in the Parameter Segment to add an -Organization parameter? Let's use it!
    # If the -Organization parameter was set, the $Organization variable will be longer than 0. Thus do ...
    if ($Organization.Length -gt 0)
    # Tell the user you are starting
    Write-Host "Starting to create the user account for $GivenName $Surname in the Organization $Organization"
    # Create new User
    $NewUser = New-ADUser -Surname $Surname -GivenName $GivenName -DisplayName "$Surname, $GivenName" -SamAccountName "$GivenName.$Surename" -Name "$Surename, $GivenName" -Organization $Organization -PassThru
    # If the -Organization parameter was NOT set, the $Organization variable will have a length of 0. Thus the if-condition does not apply, thus we do the else block
    else
    # Tell the user you are starting
    Write-Host "Starting to create the user account for $GivenName $Surname"
    # Create new User
    $NewUser = New-ADUser -Surname $Surname -GivenName $GivenName -DisplayName "$Surname, $GivenName" -SamAccountName "$GivenName.$Surename" -Name "$Surename, $GivenName" -PassThru
    # Tell the user you are copying Group Memberships
    Write-Host "Copying the group-memberhips of $Template to $GivenName $Surname"
    # Copy from old User
    $NewUser | Add-ADPrincipalGroupMembership -MemberOf (Get-ADPrincipalGroupMembership $Template | Where { $_.Name -ne 'Domain Users' })
    # Do Whatever else you feel like doing
    There! Now we first check whether the -Organization parameter was set (it's not mandatory after all, so you can skip it). If it
    was set, do whatever is in the curly braces after if (...). However, if it wasn't set, do whatever is in the curly braces after
    else.
    And that concludes my "minor" (and hopefully helpful) tutorial on how to use the function husk I posted :)
    With this, whenever you find another cool command that helps you in the user creation process, you can simply add it, similar to what I did in these examples.
    And if it all didn't make much sense, go through the tutorials in proper order and come back - it'll make much more sense then.
    Cheers and good luck with PowerShell,
    Fred
    There's no place like 127.0.0.1

  • Why does moving the mouse over an IMAQ image display slow the GUI down so much?

    I have a large application with several vi's running simultaneously under labview 8.6.1.  When I mouse over an image display control in one of the vi's, everything slows down a shocking amount in all the other vi's.  The windows task manager does not show a large increase in CPU use.  My pc is has a quad cpu with 4GB of RAM, and the CPU and memory loads do not appear to be terribly taxing to the system.  However, many of my vi's apparently come almost to a standstill if I just move the mouse in a circle around my image control.
    This looks like it is largely a GUI display issue.  If I make a new vi and put a while loop in it that only displays the iteration loop number to an indicator, I can see the iterating occurring, then stopping totally when I mouse inside the image display control.  When I stop moving the mouse inside the control, or when I move it outside the control, the interation loop number jumps up, as if it had been incrementing behind the scenes the whole time.  So only display of the interating was halted.
    This problem occurs even if the vi with the image control is not executing.  If the vi with the image control is open but not running, and I mouse over the image on it, the other guis all come to a screeching halt.
    Does mousing in the image display control really utterly crush all other guis in all other labview windows?  Is this an issue inherent to the image display control?  If so, is there anything I can do about this? 
    Also, this issue is not entirely limited to display.  I started looking at it in greater detail because this issue also exposed what I think is a race condition in my code.  I have a vi that acquires an image from a ccd and puts it into an IMAQ image.ctl.  This image then gets passed up to a vi up the call chain, and is put on a queue and sent over to be de-queued by a vi that has the image display control.  Here's the kicker:  when I mouse over the image display control, the image successfully gets acquired inside the subvi, and if I probe the wire leading to the output IMAQ image display.ctl, I see the image.  If I simultaneously probe the wire coming out of the subvi one level up the call chain, the image gets lost about half the time.  This only happens if I am mousing in the image display control IN A TOTALLY DIFFERENT AND SEPARATE VI.  If I bump up the priority of the ccd image acquisition vi to 'highest priority', the problem only happens about 1% of the time, and I really have to mouse around to make it happen.  Still, it's disturbing that mousing in the GUI in one window results in a failure of a separate subvi to simply pass an image up the call chain.  I understand that IMAQ images are referenced rather than passed by value, but I don't see why there should be a failure to pass the image up the call chain.  I've looked for a race condition, but can't find one.
    Eric

    I have finally been able to replicate the behavior that you are seeing on another computer once the image was large enough.  Here are a few notes about this behavior:
    First. The UI only slows down when the images are large, 16 bit images.  The reason why this is unique to 16 bit images is that they can only be displayed on the front panel as 8 bit images.  The workaround that Weiyuan suggested to change the 16 bit display mapping hints towards the root of the problem...that any time a mouse runs over the indicator, Windows asks the entire image to re-draw (having a separate indicator overlapping the image will create the same behavior).  With a 16 bit image, not only does the image have to re-draw on the screen but the 16 bit pixels need to be mapped to 8 bits.  When setting the 16 bit display mapping to Full Dynamic, this requires mor computation/pixel than 90% dynamic or one of the other mapping schemes.
    This is expected behavior if your program is running and you're trying to display a large 16 bit image.  To fix this behavior there are a couple options:
    Change the 16 bit display mapping to something other than full dynamic.  You can choose which 8 bits to display or if you want to map the bits. 
    Resize the image just for viewing purposes on your front panel (since you aren't going to view every single pixel of you image on the screen). You can use the IMAQ Resample.vi to do this.  This will allow you to take your 1500x1500 pixel image and only display a 500x500 pixel version.
    If you are interested in viewing small details of the large image, consider just displaying a smaller region of interest at a time.
    Let me know if any of these solutions work for you.  Good luck on your application.
    Zach C.
    Field Engineer
    Greater Los Angeles

  • Is it possible to allow the user to highlight specific label in the GUI.

    i have an existing GUI tt allows user to key in records of information eg, patient records in a hospital system.
    and display them based on wat the user key in for the patient's id no:
    is it possible to allow the user to highlight label in the GUI.
    Label as in information like Illness:<Red>Cancer<Red>
    for tt customer only.
    and re open the file to have the color still there.
    i serialized my vector of objects into a file, and have the gui to retrieve them upon execution.
    color wise i m lost.
    one solution is to have a corresponding Color attribute to each of my other attribute in all my other classes.
    besides this, any idea how to do it?
    i also did a search on java map..
    couldn't really find sth useful abt it..
    seems like few ppl know how to use it well..
    API doesn't seems to show how i can use it to reach my objective.
    anyway, i hope the user can highlight A attribute of a record and not highlight the entire record..
    tt's why i find it soo cumbersome to have another Color object created for each atttribute.
    eg:
    patientId, patientName, etc.....
    thanks in advance

    Several Swing components understand HTML tags, eg JLabel, which is VERY useful, as in the previous example.
    Are you asking "how do I highlight a field" or "how do I make it remember the color it has"?
    As Color is itself Serializable, why not store your data in a Hashtable not a Vector?

  • How do I filter photos using the keyword hierarchy?

    Since Aperture 3.1 came out, I've been taking another look at it and considering switching back from Lightroom. One baby step was to set up a proper keyword hierarchy with Aperture. Trying to use that for sorting photos, I started feeling incredibly frustrated and felt like I must be missing something screamingly obvious.
    Here's my issue. Using the keyword HUD, I can set up a nested, hierarchical keyword list. The HUD helpfully displays a running tally of all photos that keyword is applied to. "Great!" I thought, I've got 46 photos of John Smith, let's take a look at them. So I click on the number. Apparently, while Aperture is happy to show you the number of photos with the keyword, it's not willing to take you to those photos (i.e., create a library filter and show the results) via the Keyword HUD.
    Bringing up the filter HUD seems unhelpful for the opposite reason. While you can search via the keywords there, it doesn't show the keyword hierarchy! Am I missing something? Say I've got keywords for two people, Adam and Zoe, filed under People/Friends/. Using the keyword box in the filter HUD will list one at the beginning and the other at the end of my entire list of keywords. Worse, the filter HUD only seems helpful for keywords if you know which ones you're looking for, which defeats the point of using a hierarchy. If, say, I know there's 3 or 4 people I'm looking for under a particular category, but I can't remember their name of the top of my head, how do I go about finding them using the filter HUD? All I have is the long, uncategorized master list of keywords.
    Again, I feel I must be missing something obvious. Thanks for your help.
    Cheers.

    I agree, clicking on a keyword in the HUD that has a number after it to get those photos seems like a no brainer. Even though I know it doesn't do that I still find myself clicking on it before I catch myself. Need to send feedback to Apple on this, clicking on a keyword should create a filter to and display those images.
    In your example the images of Adam and Zoe should be tagged with the keywords that apply to them. That is they would have the keywords people, friends, male or female, Adam or Zoe, and whatever other keywords you use to describe these images. Then you check as many keywords in the filter that apply and you can remember.
    While the keyword HUD shows the keywords in a hierarchy, keywords applied to an image are one dimensional, linear. Its just a string of words without structure. The hierarchy is just there to make it easier to conceptualize the structure.

Maybe you are looking for