Adicionando controles e texto
Controles e texto colocados em caixas de diálogo e murais permitem que o usuário interaja com o processo de instalação. Adicione uma caixa de diálogo à interface do usuário incluindo-a na tabela Caixa de Diálogo, conforme descrito em Usando a interface do usuário. Preencha as caixas de diálogo e murais com controles preenchendo a tabela Controle e a tabela BBControl, respectivamente.
Os atributos iniciais de controle podem ser especificados na coluna Atributos da tabela Controle. Confira Atributos de controle.
Para tornar os atributos de controle dependentes de uma condição, use a tabela ControlCondition para desabilitar, habilitar, ocultar ou mostrar um controle de acordo com o valor de uma propriedade ou instrução condicional. Você também pode usar essa tabela para substituir a especificação do controle padrão inserido na tabela Diálogo.
Para que um evento altere um atributo de controle, inscreva o controle em um ControlEvent na tabela EventMapping. Um ControlEvent especifica uma ação a ser executada pelo instalador ou uma alteração nos atributos de um ou mais controles na caixa de diálogo. Confira Visão geral do ControlEvent. Insira o identificador do atributo na coluna Atributo e o identificador do ControlEvent na coluna Evento da tabela EventMapping.
Alguns controles facilitam a coleta de informações do usuário. Por exemplo, uma caixa de seleção permite que o usuário defina o valor de uma propriedade. Confira a tabela CheckBox, a tabela ComboBox, a tabela ListBox, a tabela RadioButton e a tabela ListView.
Observe que, por motivos de segurança, as propriedades privadas não podem ser alteradas pelo usuário que interage com a interface do usuário. Se uma propriedade tiver de ser definida pela interface do usuário, ela precisará ser uma propriedade pública e ter um nome em maiúsculas. Confira Sobre propriedades.
Você pode fazer com que sua caixa de diálogo apresente informações ao usuário ou grave-as em um logon em resposta às ações de instalação preenchendo a tabela ActionText.
Os controles podem ter um estilo de fonte predefinido. Para definir a fonte e seu estilo em uma cadeia de texto, acrescente à cadeia de caracteres exibidos o prefixo {\style} ou {&style}. Sendo que Style é um identificador listado na coluna TextStyle da tabela TextStyle. Caso nenhum deles esteja presente, mas a propriedade DefaultUIFont seja definida como um estilo de texto válido, essa fonte será usada.
É recomendável que a propriedade DefaultUIFont de cada pacote de instalação com uma interface do usuário seja definida na tabela Propriedade como um dos estilos predefinidos listados na tabela TextStyle. Se essa propriedade não for especificada, o instalador usará a fonte System. Isso poderá fazer com que o instalador exiba incorretamente cadeias de caracteres de texto se a página de código do pacote for diferente da página de código de interface do usuário padrão do usuário.
Para a maioria dos controles, o texto é exibido usando o conjunto de caracteres especificado pela página de código do banco de dados. Isso garante que o conjunto de caracteres correto seja usado com as informações contidas no banco de dados. As exceções a isso são os controles Editar, DirectoryList, PathEdit e DirectoryCombo, que sempre exibem texto usando o conjunto de caracteres de interface do usuário padrão do usuário. Os controles Text, ListBox e ComboBox usarão o conjunto de caracteres de interface do usuário padrão do usuário se o Atributo de Controle UsersLanguage estiver definido.
Em alguns casos, um controle pode ser redesenhado incorretamente ao cancelar uma caixa de diálogo. Isso tem a ver com a ordem em que os controles recebem mensagens WM_PAINT depois que a caixa de diálogo Cancelar é removida. Para corrigir isso, tente alterar a ordem dos controles na tabela Controle.
Os controles devem ser grandes o suficiente para acomodar todo o texto exibido em todas as configurações de tamanho da fonte. Os controles devem ser grandes o suficiente para acomodar todo o texto localizado, se o texto na interface do usuário puder ser localizado. Tamanhos de fonte maiores ou texto localizado podem exigir mais espaço do que o texto original e podem ficar truncados em um controle criado com espaço muito pequeno. Para obter mais informações sobre como localizar textos da interface do usuário, confira a seção: Exemplo de localização.