Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-11-2003
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
efectos raros del RxDBGrid

Tengo un RxDBgrid con las siguientes opciones en tiempo de diseño:

Options = [dgTitles, dgColLines, dgRowLines, dgRowSelect, dgMultiSelect]
ReadOnly = True
Multiselect = True

A ver si puedo darme a entender:

Digamos que tiene 20 columnas y en pantalla solo se ven las 10 primeras columnas
le doy al desplazamiento horizontal para ver la columna nº 15
le doy un clic a una fila y voilá, el grid vuelve a mostrarme las 10 primeras columnas.

¿Hay forma de que se quede en la columna nº15 ?
Responder Con Cita
  #2  
Antiguo 02-11-2003
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Eso mismo también le ocurre al Dbgrid normal que viene con Delphi.

Si pulsas en el título y tienes ColumnResize activado te conserva la columna actual, en caso contrario vuelve a colocarse en las x primeras.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.

Última edición por marcoszorrilla fecha: 02-11-2003 a las 21:51:49.
Responder Con Cita
  #3  
Antiguo 03-11-2003
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Gracias Marcos.

Al primer intento no funcionó ya que tambien tenia la opcion dgRowSelect a true. Al parece hay que poner:

Código:
dgColumnResize  := true;
dgMultiSelect := true;

dgRowSelect := false;
Así permite seleccionar varias filas, manteniendose en la columna que se veía. Intuitivamente yo ponia dgRowSelect a true; parece que no hace falta.

¿ Hay alguna ayuda que explique con claridad que al modificar tal o cual opcion altere/excluya otras opciones del grid ? ¿ o eso lo trae la experiencia?

La verdad es que me marea bastante el dichosito componente

Muchas gracias.
Responder Con Cita
  #4  
Antiguo 03-11-2003
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 25
__cadetill Va por buen camino
cadado de la ayuda de Delphi

Cita:
type
TDBGridOption = (dgEditing, dgAlwaysShowEditor, dgTitles, dgIndicator, dgColumnResize, dgColLines, dgRowLines, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgConfirmDelete, dgCancelOnExit, dgMultiSelect);

TDBGridOptions = set of TDBGridOption;

property Options: TDBGridOptions;

Description

Set Options to include the desired properties for the data-aware grid. Options is a set drawn from the following values:

Value -- Meaning
dgEditing -- The user can edit data using the grid. dgEditing is ignored if Options includes dgRowSelect.
dgAlwaysShowEditor -- The grid is always in edit mode. That is, the user does not have to press Enter or F2 before editing the contents of a cell. dgAlwaysShowEditor does nothing unless dgEditing is also included in Options. dgAlwaysShowEditor is ignored if Options includes dgRowSelect.
dgTitles -- Titles appear at the top of the columns in the grid.
dgIndicator -- A small pointer appears in the first column to indicate which row is current.
dgColumnResize -- Columns that are bound to fields can be resized or moved.
dgColLines -- Lines appear between columns in the grid.
dgRowLines -- Lines appear between the rows of the grid.
dgTabs -- The user can navigate through the grid using the Tab and Shift+Tab keys.
dgRowSelect -- The user can select an entire row, as well as selecting individual cells. If Options includes dgRowSelect, dgEditing and dgAlwaysShowEditor are ignored.
dgAlwaysShowSelection -- The selected cell displays the focus rectangle even when the grid does not have focus.
dgConfirmDelete -- A message box appears, asking for confirmation, when the user types Ctrl+Delete to delete a row in the grid.
dgCancelOnExit -- When the user exits the grid from an inserted record to which the user made no modifications, the inserted record is not posted to the dataset. This prevents the inadvertent posting of empty records.
dgMultiSelect -- More than one row in the grid can be selected at a time.
Queda mejor visto en la ayuda, pero bueno

Espero te sirva
Responder Con Cita
  #5  
Antiguo 04-11-2003
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Gracias por las molestias que te has tomado cadetill, pero creo que el que no se explicó con
claridad fuí yo.

Lo que no dice en la ayuda es que si pones dgColumnResize, además de permitir cambiar el ancho de las columnas, también te permite con el boton derecho cambiar las columnas de sitio, y en este caso, el popupMeu que se asocia al grid no se muestra correctamente (Hay que dar un doble clic con el boton derecho para que aparezca el popup)

Tampoco dice en la ayuda esto:
Cita:
Si pulsas en el título y tienes ColumnResize activado te conserva la columna actual
A estos tipos de comportamientos era a lo que me referia, desde luego no es lógico que al poner una Opción, se pase por alto otras, o el componente decida alegremente lo que ha de hacer.
Es como subir a un taxi y decir.... "al centro", y el conductor, arrancando el coche te responde: "NO. Yo le llevo a las afueras" :P

En mi humilde opinión, creo que el componente debería tener mas "Options" tales como [RightButtonMoveColumn, AllowColumnMove, PreserveVisibleColumns]. Así quedaría más claro el comportamiento que va a tomar.


¿Algún Valiente que las añada?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 09:55:32.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi