A ver, si rellenas tú el TreeView con Items creados por ti, es tan fácil como asignarle el valor SelectedIndex el mismo que ImageIndex:
Ejemplo:
Código Delphi
[-]procedure TForm1.Button1Click(Sender: TObject);
begin
with TreeView1.Items.Add(nil, 'Prueba') do
begin
ImageIndex:=15; SelectedIndex:=ImageIndex; end;
end;
Pongamos por ejemplo, que el TreeView no lo estas rellenando tú, sino que es otro "proceso" el que lo rellena por ti, y tu no tienes control sobre este (y no quieres realizar un bucle cambiando los valores), puedes capturar el evento "OnGetSelectedIndex" del TTreeView.
Ejemplo:
Código Delphi
[-]procedure TForm1.TreeView1GetSelectedIndex(Sender: TObject; Node: TTreeNode);
begin
Node.SelectedIndex:=Node.ImageIndex;
end;
Saludos.