docs: public void init(BaseApplet applet, RemoteSession remoteSession, FieldList record, String strDesc, String strFieldName, String strComponentName, boolean bCacheTable, String strIndexValue, String strKeyArea)
      {
          this.setOpaque(false);
          this.setAlignmentX(LEFT_ALIGNMENT);
          this.setAlignmentY(TOP_ALIGNMENT);
          
          m_strIndexValue = strIndexValue;
          m_record = record;
          
          this.addItem(strDesc);
          try   {
              FieldTable table = null;
              if (record.getTable() == null)
                  table = applet.linkRemoteSessionTable(remoteSession, record, bCacheTable);
              else
                  table = record.getTable();
              if (strKeyArea != null)
                  record.setKeyArea(strKeyArea);
              for (int iIndex = 0; ; iIndex++)
              {
                  if (table.get(iIndex) == null)  // I use get, so the index matches the index of JComboBox
                      break;
                  FieldInfo field = record.getField(strFieldName);
                  if (field == null)
                      field = record.getField(1);
                  String strDescription = field.getString();
                  if ((strDescription != null) && (strDescription.length() > 0))
                      this.addItem(strDescription);
              }
          } catch (Exception ex)  {
              ex.printStackTrace();
          }
          this.setName(strComponentName);
      }