Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TableView supporting row/colume/cell selection #542

Open
yxdragon opened this issue Feb 26, 2024 · 0 comments
Open

TableView supporting row/colume/cell selection #542

yxdragon opened this issue Feb 26, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@yxdragon
Copy link

Is your feature request related to a problem? Please describe.

I found TableView did not support select by colume or cell (just like excel)
and may have sume performance problem when render a large dataframe with many rows and columes.
So I want to build a new TableView supporting selected by row/col/cell, editing cell, and render large dataframe.

Describe the solution you'd like

So I wrote one with canvas, I draw everything by canvas, now it is just ok!

  1. a virtual view, which can draw very large data smoothly, (just draw the rows needed)
  2. select by row, colume or cell (ctrl to invert selection and shift to union selection like excel).
  3. adjust row height and colume width when cursor in the header sep.

but now I do not know how to implements editing. (when double click a cell, select and highlight the background, with cursor flashing)

Describe alternatives you've considered

  1. I can draw the highlight background, even I can draw the cursor flashing in after function recursively.
  2. I can also place a Entry in the cell, But then I need to manage the size, border, and background. re place it when ever the canvas scrolled.

But I think the both are not the best way. any good suggestions?

Additional context

1708963023373
1708963092170
tableview.txt

Is it useable for ttkbootstrap when completed? It could be called GridView.

@yxdragon yxdragon added the enhancement New feature or request label Feb 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants