Best way to author field level help for a CHM?

Hi
I have been asked to create an HTML help (CHM) system for a .Net application which will include context sensitive help at both page and field level.
I have used map ids for page level help before - i.e. assigned a map id to topics and given this list to a developer for implementation, but I have never created field level help.
I've been looking at the 'What's This?' help project wizard but am confused as to whether this is the best approach and how it fits with the project as a whole (or even if it compatible with .Net applications). Does this mean that I need two help projects for the application - one for the main help, and one for the field level help? Is there a way to create field level help without using the 'What's This?' wizard?
I am using Robohelp 7.
Any advice gratefully received!
Chloe

Hi, Chloe,
As Peter notes, even Microsoft has backed away from using field-level Help in the last few years, so it may be worth trying to determine whether your users will benefit from having it available to them. That's not to say that you can't deliver field-level Help, however, as all the required methods for calling it are still available to .NET developers.
To clarify, what Madcap Software calls "DotNet Help" is just a proprietary Help viewer that the company hopes will be more modern and appealing to writers than the older HTML Help (.chm) viewer. HTML Help remains the recommended format for Windows applications, whether .NET or not, and you can use any authoring tool that is capable of outputting a .chm file to create online Help for a .NET application.
The method that your developers use to call field-level Help determines how it should be authored. If they use the standard .NET method (the SetHelpString method of the HelpProvider class), each text string is embedded in the application code itself, and not retrieved from your .chm file. More information here:
http://msdn.microsoft.com/en-us/library/system.windows.forms.helpprovider.sethelpstring(VS .71).aspx
http://support.microsoft.com/kb/821777
http://helpware.net/mshelp2/demo2/h1xNET.htm
Alternatively, developers can use the old HTML Help API to retrieve the text string from a .chm file. See:
http://msdn.microsoft.com/en-us/library/ms670082(VS.85).aspx
http://helpware.net/htmlhelp/how_to_whatsthis.htm
http://support.microsoft.com/?kbid=317406
The drawback of both methods is that the Help popups are plain text only — no graphics, text formatting, hyperlinks, etc. To work around this, some people use the third-party KeyHelp control to create feature-rich HTML popups. See:
http://www.keyworks.net/keyhelp.htm
This allows you to deliver the type of Help that you mentioned in your second message ("is there a way to do this so that these topics open in a small popup, without the TOC / tri-pane structure?").
Pete

Similar Messages

  • Field-level Help possible with WebHelp?

    Hi All,
    I'm trying to determine whether WebHelp supports field-level
    help, and between reading the online Help and the forums, I'm
    confused. The online help states "WebHelp window support is only
    available with the context-sensitive Help API." Does that mean that
    WebHelp doesn't officially support field-level help? I'm sure we
    can implement field-level help with some creative programming, but
    I'm not sure of the requirements.
    Is the CSH API required for field-level help? Or do we need
    only implement the solutions described on
    Peter's
    site detailing calling WebHelp? And the RoboHelp Office
    TechNote
    Calling
    Topics with Two Pane View?
    I appreciate any assistance that anyone can provide!
    want2bewiser

    want2bewiser -
    If you recall, field-level help was implemented by clicking
    on a Question mark icon on the top right in the title bar. Your
    cursor changed to a Question Mark and pointer, and clicking on a
    field, button or other control would evoke a popup.
    You can duplicate that functionality, but the lions's share
    of the work would be on the developers. You can provide the small
    blurbs, but how it is called is up to them.
    The API is useful if you might change topic ids often, or if
    you need a sort of map file, or if you just want a standard way of
    calling Webhelp into a certain window format. But you don't need
    the two-pane format instructions for 'What's This' help.
    So, your developer will have to add a function to each page
    so that, if the user changes the cursor to a 'What's This' curson,
    and an object is clicked during this 'What's This' state, an
    explanatory popup will, um, pop up.
    ...Otherwise, everything behaves normally.

  • Field Level Help on Tabular forms

    Hi,
    Is there any easy way I can add field level help to tabular forms?
    If I create a form on a table I can add help for each field, however if I create a tabular form there seems to be no way I can associate field level help with a column.
    I know that I can add page level help and could describe all of the columns there, but it would be nicer to add individual help to each column.
    Any ideas?
    Thanks,
    Martin

    Hi Martin!
    Take a look at these sites which will provide you more information about your problem.
    [http://apex-at-work.blogspot.com/2008/10/apex-select-list-with-dynamic-help-text.html|http://apex-at-work.blogspot.com/2008/10/apex-select-list-with-dynamic-help-text.html]
    TRICK: Dynamic Item Help Text as Tooltip
    [http://apex.oracle.com/pls/otn/f?p=11933:121|http://apex.oracle.com/pls/otn/f?p=11933:121]
    Regards,
    Tobias
    [http://apex-at-work.blogspot.com/]

  • Best way to create an IPhone Application for my Blog

    What's the best way to create an Iphone application for my Blog? I've seen several blogs that have their own application.
    Could use some help,
    Used Car parts Guy
    <Edited by Moderator>

    Thanks for this info... I too am interested in creating my own application... Would love to hear from others...
    Do you think it brings in traffic?
    Are you charging for your application or free?
    Thanks,
    <Edited by Moderator>

  • Field level help always shows homeID URL

    I implemented context-sensitive help of 2 types:
    1. Field level help - triggered from a menuitem using:
    menuitem_CSH.addActionListener(new CSH.DisplayHelpAfterTracking(mainHS, "javax.help.Popup", null));
    2. Help key (F1) type help - using:
    mainHB.enableHelpKey(getRootPane(), "top", mainHS);
    Point 2 type help works perfectly - which implies that my MAP file & setHelpID...() stuff is alright.
    CSH.setHelpIDString(jbtnConfigure, "config");
    CSH.setHelpIDString(jbtnAlarms, "gettingstarted");
    Point 1 however always displays the URL of the homeID. I've tried all kinds of things but can't get this to work.
    Am I missing something here? Any help/pointers would be appreciated.

    maybe something like this will work.
    works OK for System.exit(), other options??
    click into the 2nd textfield, message displays
    click the menu items, no message
    import java.awt.event.*;
    import java.awt.*;
    import javax.swing.*;
    class Testing extends JFrame
      JMenu file = new JMenu("File");
      int counter;
      public Testing()
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLocation(400,200);
        JMenuItem exit = new JMenuItem("Exit");
        file.add(exit);
        JMenuBar menuBar = new JMenuBar();
        menuBar.add(file);
        setJMenuBar(menuBar);
        JTextField tf = new JTextField(10);
        tf.setInputVerifier(new MyVerifier());
        getContentPane().add(tf,BorderLayout.NORTH);
        getContentPane().add(new JTextField(10),BorderLayout.SOUTH);
        pack();
        exit.addActionListener(new ActionListener(){
          public void actionPerformed(ActionEvent ae){
            System.exit(0);}});
      class MyVerifier extends InputVerifier
        public boolean verify(JComponent input)
          if(((JTextField)input).getText().equals(""))
            if(file.isSelected() == false) System.out.println("Invalid "+counter++);
            return false;
          return true;
      public static void main(String[] args){new Testing().setVisible(true);}
    }

  • Field level help

    Hi,
    Is portal provide any field level help. I mean to say that when i place my mouse arrow on a field than it gives me help what it does or press some key to know what this field does. Something like ballonic help in Developer 2000 Forms.
    Thanks
    Muhammad Ijaz

    We use field-level help from within our application, Liz, and
    we use Robo v5 for our HTML Help (output in CHM). I'm not entirely
    sure how the code is written because I only do the Help System (our
    application is currently being rewritten in Dot Net and we haven't
    finalized the Help for Dot Net yet). All I do in my Robo projects
    is put the bookmark where it needs to be. The F1 command that is
    passed within the application calls that bookmark. The app is
    currently written in Progress and the code simply calls the
    module/program/bookmark. As long as the bookmark I use in Robo
    matches what the Developer calls, the field level help works
    perfectly. The only problem we ever had was when the field name
    changed in the application and nobody told us in Documentation! As
    soon as I updated my bookmarks, it worked again.
    Hope this helps. If you need more info on the commands, email
    me directly and I'll get with the Developer to ask about the
    command line the code sends to call the CHM.

  • What is the best way to replace the Inline Views for better performance ?

    Hi,
    I am using Oracle 9i ,
    What is the best way to replace the Inline Views for better performance. I see there are lot of performance lacking with Inline views in my queries.
    Please suggest.
    Raj

    WITH plus /*+ MATERIALIZE */ hint can do good to you.
    see below the test case.
    SQL> create table hx_my_tbl as select level id, 'karthick' name from dual connect by level <= 5
    2 /
    Table created.
    SQL> insert into hx_my_tbl select level id, 'vimal' name from dual connect by level <= 5
    2 /
    5 rows created.
    SQL> create index hx_my_tbl_idx on hx_my_tbl(id)
    2 /
    Index created.
    SQL> commit;
    Commit complete.
    SQL> exec dbms_stats.gather_table_stats(user,'hx_my_tbl',cascade=>true)
    PL/SQL procedure successfully completed.
    Now this a normal inline view
    SQL> select a.id, b.id, a.name, b.name
    2 from (select id, name from hx_my_tbl where id = 1) a,
    3 (select id, name from hx_my_tbl where id = 1) b
    4 where a.id = b.id
    5 and a.name <> b.name
    6 /
    Execution Plan
    0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=7 Card=2 Bytes=48)
    1 0 HASH JOIN (Cost=7 Card=2 Bytes=48)
    2 1 TABLE ACCESS (BY INDEX ROWID) OF 'HX_MY_TBL' (TABLE) (Cost=3 Card=2 Bytes=24)
    3 2 INDEX (RANGE SCAN) OF 'HX_MY_TBL_IDX' (INDEX) (Cost=1 Card=2)
    4 1 TABLE ACCESS (BY INDEX ROWID) OF 'HX_MY_TBL' (TABLE) (Cost=3 Card=2 Bytes=24)
    5 4 INDEX (RANGE SCAN) OF 'HX_MY_TBL_IDX' (INDEX) (Cost=1 Card=2)
    Now i use the with with the materialize hint
    SQL> with my_view as (select /*+ MATERIALIZE */ id, name from hx_my_tbl where id = 1)
    2 select a.id, b.id, a.name, b.name
    3 from my_view a,
    4 my_view b
    5 where a.id = b.id
    6 and a.name <> b.name
    7 /
    Execution Plan
    0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=8 Card=1 Bytes=46)
    1 0 TEMP TABLE TRANSFORMATION
    2 1 LOAD AS SELECT
    3 2 TABLE ACCESS (BY INDEX ROWID) OF 'HX_MY_TBL' (TABLE) (Cost=3 Card=2 Bytes=24)
    4 3 INDEX (RANGE SCAN) OF 'HX_MY_TBL_IDX' (INDEX) (Cost=1 Card=2)
    5 1 HASH JOIN (Cost=5 Card=1 Bytes=46)
    6 5 VIEW (Cost=2 Card=2 Bytes=46)
    7 6 TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6967_3C610F9' (TABLE (TEMP)) (Cost=2 Card=2 Bytes=24)
    8 5 VIEW (Cost=2 Card=2 Bytes=46)
    9 8 TABLE ACCESS (FULL) OF 'SYS_TEMP_0FD9D6967_3C610F9' (TABLE (TEMP)) (Cost=2 Card=2 Bytes=24)
    here you can see the table is accessed only once then only the result set generated by the WITH is accessed.
    Thanks,
    Karthick.

  • Best way to clean microfiber cloth used for the display?

    What is the best way to clean microfiber clothes used for the display?
    Thanks

    Hand washing works well, but can be tedious.
    If you decide to machine wash, make sure of a few things:
    - Use warm water
    - Do not wash with towels or undergarments. The microfiber cloth will pick up every bit of lint from them.
    - Wash it with similar color items.
    - Use regular soap, but don't use bleach or fabric softener. The bleach can damage the cloth (and the Apple cloth is black anyway, do you really want a spotted cloth?) and the fabric softener will reduce the effectiveness of the cloth.
    - Hang it up to dry or dry it on the lowest setting of your dryer. I am not certain about the Apple cleaning clothes, but other microfiber clothes have been known to actually melt in the dryer if it gets too hot.
    To hand wash:
    - Put the cloth in a bowl with a tight fitting lid, add a little soap. Either dish soap or laundry soap will work, you don't need much.
    - Close the lid tight & then shake the bowl hard for a few minutes. Find a 3 year old, they'll love to help do this.
    - Remove the cloth & rinse it well, making sure the water runs clear.
    - Air dry flat or throw it in the dryer at a low setting.

  • What is the best way to declare field length 500 in internal table?

    Hi all,
    what is the best way to declare field length 500(constant value allways) in internal table?
    I am trying to send data from internal table to file format, and I have a field in internal table with 500 length (constant value always). So how do I can declare and append this field value to table?
    Thanks
    Murali

    Hi.  Please see the following example program, notice how I am filling the field with the constant value.
    report zrich_0001.
    *       CLASS lcl_main DEFINITION
    class lcl_main definition.
      public section.
        types: begin of ttab,
                fld1(500) type c,
               end of ttab.
        data: itab type table of ttab.
        data: xtab type ttab.
        methods: constructor,
                 write_itab.
    endclass.
    *       CLASS lcl_main IMPLEMENTATION
    class lcl_main implementation.
      method constructor.
    <b>
        xtab-fld1 =
          'This is one part of the total string which needs to be really' &
          ' long and this is a constant and we need to move it to a work' &
             ' area and then append it to the internal table which has a' &
              ' field with a length of five hundred characters'.
        append xtab to itab.</b>
      endmethod.
      method write_itab.
        loop at itab into xtab.
          write:/ xtab-fld1.
        endloop.
      endmethod.
    endclass.
    data: o_main type ref to lcl_main.
    start-of-selection.
      create object o_main.
      call method o_main->write_itab.
    Regards,
    Rich Heilman

  • Best way to start a new catalog for 2009 ?

    Hi,
    What's the best way to start a new catalog for the new year, with all the keywords and all the presets of the modules (without having to export all the folders) of previous catalog 2008 ?
    Thanks,
    Dominique

    Well there is a cost too in not being able to find all your images in a single step, and inconsistencies soon develop - eg a keyword is plural in one catalogue, singular in another. Speed or stability issues are not simply related to catalogue size, and I've seen decently-performing catalogues 50% bigger than yours (as well as slow ones of a few hundred images). Have you optimized the catalogue recently?
    But if you think it's a good idea to fragment control of your picture collection.... Presets will be carried over to a new catalogue as they belong to the machine (unless you have the save with catalogue preference turned on). Keywords can be moved via the Metadata > Export and Import Keywords command. If you have lots of collections and smart collections, then maybe make a copy of your existing catalogue and then remove all the items from it - making sure you don't trash them of course.
    John

  • Hi all! What is the best way to create the correct space for baseball jersey names and numbers? along with making sure they are the right size for large printing.

    What is the best way to create the correct space for baseball jersey names and numbers? along with making sure they are the right size for large printing.

    Buying more hard drive space is a very valid option, here.  Editing takes up lots of room, you should never discount the idea of adding more when you need it.
    Another possibility is exporting to MXF OP1a using the AVC-I codec.  It's not lossless, but it is Master quality.  Plus the file size is a LOT smaller, so it may suit your needs.

  • What is the best way to maintain your Battery Life for Iphone 5 ?

    What is the best way to maintain your Battery Life for Iphone 5 ?

    hi,
    so what would you suggest to do here then. let it get to 50% then run the battery down and at say 5-%ish re-charge it fully.
    is there anything i could switch off on my phone to save battery power. ive taken off he location services apart from ym locate my iphone, stopped the fetch new data and set it to manaul . this is also the same for the icloud as well.more or less everything has been set to manual or set to off ??

  • What's the best way to charge my iphone 6 for the first time ?

    what's the best way to charge my iphone 6 for the first time ?

    Just charge it to 100%.
    Use it on the charger when possible. Recharge when the battery is around 50% when possible. Avoid to let the battery go down below 20%.
    Read here about modern Li batteries
    http://batteryuniversity.com
    Lex

  • What is the best way to make PSD into HTML for emails

    What is the best way to make PSDs into HTML for emails? Will the new feature in Dreamweaver work for emails as well? I am using Cheetah mail, but I need to be able to turn PSDs into HTML so I can use it in Cheetah mail.  I have a general idea of how to do this, but I'm stumped about where to begin.

    Use PShop for images only.  Use DW to create your tables and inline CSS styles.
    Many e-mail clients do not show images for security reasons.  So graphics heavy e-mails are not an optimal way to communicate with your mailing list.
    See Alt-Web Articles, HTML E-mails and Newsletters
    Nancy O.

  • Aloha, I have a CD-Rom from 2001 that i very much want to access but cannot because i no longer have "classic." There are a variety of video and text files. What is the best way to convert? Any help is greatly appreciated. mahalo.

    Aloha, I have a CD-Rom from 2001 that i very much want to access but cannot because i no longer have "classic." There are a variety of video and text files. What is the best way to convert? Any help is greatly appreciated. mahalo.

    Buy a cheap older Mac like an iMac.
     Cheers, Tom

Maybe you are looking for

  • Formatting XML using DBMS_XMLGEN

    Hi. Having Problems with generating XML out of a query using nested table types -- Heres a test case drop type test_tab drop type test_type drop type sub_type_tab drop type sub_type create or replace type sub_type as object ( "@a" varchar2(10), "@b"

  • Message splitting using java mapping and BPM

    Hi all, I have a PLAIN FILE to IDOC Scenario. We decide to use javamapping instead of message mapping because we have several hierachical structures. We has more than one IDOC for file. And the mapping it's unable to detect the another header and cre

  • Can't do a save as disc image

    I have iMovie '09 (8.0.6) iDVD 7.1.2 and am having a problem saving a large file (3.9gb) as a disc image. This file was made in iMovie with chapters and I "Shared to Media Browser" (I am using the .m4v file).I did a short (2 min.) test file in iDVD t

  • Block route pattern

    Hello, I ran the dial number analyzer and it says a router pattern is blocking the extension im trying to dial on my VOIP network.  I tried tracing what partition and calling search space might cause the blocking but cant tell.  Where in cucm on vers

  • Setup IVI for a DMM

    I have a PXI-1002 with a PXI-4060 DMM. I'm trying to use the IVIDmm activex control to control the DMM. I cannot get it to work for the life of me. Can anyone help me set this up? My device descriptor I think it should be is PXI3::3::INSTR but I have