标签: tableview

如何以编程方式更改/更新 Python PyQt4 TableView 中的数据?

我希望在QWidget窗口中有一个表格,并在每次用户在lineEdit字段中输入值时更新表格。我如何以编程方式执行此操作?

状态:我在您的代码中收到以下错误:

TypeError:QAbstractTableModel.beginInsertRows(QModelIndex,int,int):参数2具有意外类型“str”

from PyQt4 import QtGui , QtCore
import sys

try:
    _fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
    _fromUtf8 = lambda s: s


class ABCTableModel(QtCore.QAbstractTableModel):
    def __init__(self,data,parent=None):
        QtCore.QAbstractTableModel.__init__(self,parent)
        self.__data=data     # Initial Data

    def rowCount( self, parent ):
        return len(self.__data)

    def columnCount( self , parent ):
        return len(self.__data)

    def data ( self , index , role ):
        if role == QtCore.Qt.DisplayRole:
            row = index.row()
            column = index.column()
            value = self.__data[row][column]
            return QtCore.QString(str(value))

    def setData(self, index, value):
        self.__data[index.row()][index.column()] = …
Run Code Online (Sandbox Code Playgroud)

python qwidget pyqt4 tableview

1
推荐指数
1
解决办法
9678
查看次数

如何在javafx表视图中获取记录(项目)编号列?

我已经用 MySQL 数据库中的表的列填充了 JavaFX TableView。

在我的 TableView 中,我创建的第一列是“Number”,它没有链接到 MySql 数据库表中的任何列。在这一列中,我想查看每行的行数。

例如,如果 TableView 有 5 行,则“数字”列必须分别为每行显示数字 1、2、3、4、5。如果删除第 4 行,则剩余行的行号应为 1,2,3,4。

javafx tableview javafx-8

1
推荐指数
1
解决办法
2365
查看次数

如何在 JavaFX 中将简单的双矩阵绘制到 TableView 中?

我想TableView在 JavaFX 中创建一个简单的数据,其中我的数据是一个类似矩阵的二维double[][]数组,但我不知道如何实现这一点,有什么建议吗?

java javafx tableview

1
推荐指数
1
解决办法
2371
查看次数

更改 tableView 中单元格的 editStyle 背景颜色和标签

我有一个表格视图,我试图在其中实现滑动删除操作。

我正在使用 swift 4 和 Xcode 9。

到目前为止,我有下一个代码,它允许我在滑动时显示删除标签:

func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
    switch editingStyle {
    case .delete:
        print("deleting row")

    default:
        return
    }
}
Run Code Online (Sandbox Code Playgroud)

到目前为止一切顺利,现在我想将背景红色更改为另一种颜色,如果可能的话我想显示一个图标而不是标签。

我正在尝试在 Swift 4 中看到的这段代码,但在创建按钮时它会抱怨:

func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? {
    let deleteButton = UITableViewRowAction(style: .default, title: "Delete") { (action, indexPath) in
        self.tableView.dataSource?.tableView!(self.tableView, commit: .delete, forRowAt: indexPath)
        return
    }
    deleteButton.backgroundColor = UIColor.black
    return [deleteButton]
}
Run Code Online (Sandbox Code Playgroud)

它给出了此错误 -> 对成员 'tableView(_:numberOfRowsInSection:)' 的引用不明确

我不知道我是否正在尝试编辑的好方法,或者它是否在 swift 4 上根本不可编辑。

任何帮助表示赞赏,

谢谢!

cell tableview swift swift4

1
推荐指数
1
解决办法
6942
查看次数

使用表格单元格内的按钮从原型单元格传递数据

我有动态填充原型单元的数据。它只会根据需要创建尽可能多的数据单元格。我遇到的问题是单击 UIButton 时将数据传递到详细视图。

每个动态单元格内都有一个 UIButton,按下该按钮时将传递选定到详细视图中的单元格内的任何数据。

将数据加载到表视图中没有问题,我只是无法正确传递值。

这是我的行单元格:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "part", for: indexPath) as! partsTableCell

    let part = partList[0]

    cell.a.text = String(part.a)
    cell.b.text = part.b
    cell.c.text = part.c
    cell.d.text = part.d
    cell.e.text = part.e
    cell.f.text = part.f

    self.tableView.rowHeight = 250
    cell.layer.borderColor = UIColor.darkGray.cgColor
    cell.layer.borderWidth = 1
    cell.layer.cornerRadius = 5
    cell.clipsToBounds = true
  //tried using tags, but no luck
    //cell.myButton.tag = indexPath.row

    return cell
}
Run Code Online (Sandbox Code Playgroud)

为了彻底起见,我为表格单元格设置了一个自定义类。

class partsTableCell: UITableViewCell …
Run Code Online (Sandbox Code Playgroud)

tableview ios segue swift

1
推荐指数
1
解决办法
172
查看次数

JavaFX:如何禁用 TableView 中的 ScrollBars

我有一个 JavaFX TableView,我希望表行为TableView在父节点大小调整得太小而无法显示数据时截断图像,而不是使其变得可滚动。为了澄清,我只是希望滚动条被禁用或不可见,这样它们就不会显示。

下面是我在 SceneBuilder 中的节点层次结构,以防有帮助。

在此输入图像描述

我在下面尝试过的事情

我读了这篇文章,但答案只是使单元格调整大小以适应宽度,而不是禁用ScrollBar. 我在这里ScrollBar阅读了有关s的文档,但找不到 a或属性。我也阅读了这里的文档,但没有运气。visibleenabledTableView

我在这里搜索了JavaFX CSS指南,发现下面有两个策略可以引用滚动窗格。

-fx-hbar-policy:
-fx-vbar-policy:
Run Code Online (Sandbox Code Playgroud)

但将 包裹TableView在 a 中ScrollPane并没有按预期工作。它不允许我“适应父母”。我想引用这些属性,但TableView如果可能的话,可以直接引用。非常感谢任何建议。

css java javafx tableview

1
推荐指数
1
解决办法
7478
查看次数

Swift UIKit Joint - 如何在处理发布者事件时重新加载表格视图?

使用组合和 UIKit,当 viewModel 中包含的数组发生更改时,我尝试更新我的表视图。我的表视图的数据源是单独的,因为我想重用该文件(不同的对象都有一个名称 var,因此表视图将显示名称列表)。

视图模型:

class ViewModel {
  @Published var items = [ItemViewModel]()
  let service = NetworkService()

  init() {
    fetchItems()
  }
    
  func fetchItems() {
    service.fetchItems { items in {
    self.items = items.map { ItemViewModel($0) }
  }
}
Run Code Online (Sandbox Code Playgroud)

数据源:

class GenericDataSource: UITableViewDataSource {
   var list = [String]()

   func setList(_ list: [String]) {
       self.list = list
   }

  // then the usual tableView datasource boilerplate
}
Run Code Online (Sandbox Code Playgroud)

视图控制器:

class ViewController: UIViewController {
  let viewModel = ViewModel()
  let tableDataSouce = GenericDataSource()
  var subscriptions = …
Run Code Online (Sandbox Code Playgroud)

mvvm uikit tableview swift combine

1
推荐指数
1
解决办法
4124
查看次数

JavaFX - 将一行从表格视图拖到文本区域中

考虑 JavaFX 应用程序内的表格视图。表视图包含有关人员的数据:

id    firstname    lastname

1     John         Doe
Run Code Online (Sandbox Code Playgroud)

表视图的每一行都可以用来实例化一个 Person 对象:

new Person(Integer id, String firstname, String lastname)

这是我想做的:

我想选择表格视图中的一个人,然后用鼠标将其拖动到文本区域中。在文本区域内我想打印字符串:

1 John Doe

我知道我必须实现三个函数才能实现此目的:onDragDetected(), onDragOver() and onDragDropped()

我想从以下开始:

public void onDragDetected(DragEvent dragevent) {
    Person person = tvPersonData.getSelectionModel().getSelectedItem();
}
Run Code Online (Sandbox Code Playgroud)

这有效。但我必须以某种方式让我的 Person 进入 DragBoard 对象 ( dragevent.getDragboard())。我想我是这样的。然后也许我的其他功能可以使用我的拖板内的任何内容。

有人可以帮我从这里出去吗?

drag-and-drop javafx tableview

1
推荐指数
1
解决办法
263
查看次数

Javafx动态添加行重复数据

我在 Javafx 中有一个 Tableview,其中我尝试在用户按下按钮时动态添加一行。问题是,执行此操作时,表中以前的数据会重复。我必须说,如果我打印表中项目的大小,它会返回正确的大小,没有重复项,并且我无法选择重复的项目,也无法滚动查看它们。\n这是我的代码:\ ndetail.fxml

\n
<TableView fx:id="tblPersonalExterno" prefHeight="200.0" prefWidth="200.0" VBox.vgrow="ALWAYS">\n                                            <columns>\n                                                <TableColumn prefWidth="781.0000244379044">\n                                                    <graphic>\n                                                        <Label text="Externo" />\n                                                    </graphic>\n                                                    <columns>\n                                                        <TableColumn fx:id="tblcNombreExterno" prefWidth="270" text="Nombre"/>\n                                                        <TableColumn fx:id="tblcEmpresaExterno" prefWidth="270" text="Empresa" />\n                                                        <TableColumn fx:id="tblcInfPRLExterno" minWidth="0.0" prefWidth="59.0">\n                                                            <graphic>\n                                                                <Label text="Inf. PRL">\n                                                                    <tooltip>\n                                                                        <Tooltip text="Informado PRL" />\n                                                                    </tooltip>\n                                                                </Label>\n                                                            </graphic>\n                                                        </TableColumn>\n                                                        <TableColumn fx:id="tblcAprobadoPRLExterno" minWidth="0.0" prefWidth="73.00003051757812">\n                                                            <graphic>\n                                                                <Label text="Apr. Cl. PRL">\n                                                                    <tooltip>\n                                                                        <Tooltip text="Aprobado cliente PRL" />\n                                                                    </tooltip>\n                                                                </Label>\n                                                            </graphic>\n                                                        </TableColumn>\n                                                        <TableColumn fx:id="tblcFechaAprPRLExterno" prefWidth="100.0">\n                                                            <graphic>\n                                                                <Label text="Fecha apr.">\n                                                                    <tooltip>\n                                                                        <Tooltip text="Fecha de aprobaci\xc3\xb3n" />\n                                                                    </tooltip>\n                                                                </Label>\n …
Run Code Online (Sandbox Code Playgroud)

javafx tableview

1
推荐指数
1
解决办法
49
查看次数

NSArray计数不起作用

所以我有一个UITableView,我用table中的数据填充tableview .plist.这对我来说一直很好,直到今天,当我试图做同样的事情,我无法得到numberOfRowsInSection,方法工作.这是我的代码:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
     if...

     else if (segmentOptions == exchange){
         NSArray *array = [NSArray arrayWithArray:[exchangeDictionary objectForKey:[listOfExchanges objectAtIndex:section]]];
         return [array count];
     }   

   //Else
    return contentArray.count;
}
Run Code Online (Sandbox Code Playgroud)

因此,在该代码中,每次运行代码时,代码都会崩溃.但是,我使用基本相同的代码来设置tableview文本,并且工作正常:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
     static NSString *CellIdentifier = @"Cell";

     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
         cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
     }

     if...

     else if (segmentOptions == exchange) {
           NSArray *array = [NSArray arrayWithArray:[exchangeDictionary objectForKey:[listOfExchanges objectAtIndex:indexPath.section]]];
           cell.textLabel.text = …
Run Code Online (Sandbox Code Playgroud)

iphone xcode uitableview tableview ios

0
推荐指数
1
解决办法
2567
查看次数

标签 统计

tableview ×10

javafx ×5

swift ×3

ios ×2

java ×2

cell ×1

combine ×1

css ×1

drag-and-drop ×1

iphone ×1

javafx-8 ×1

mvvm ×1

pyqt4 ×1

python ×1

qwidget ×1

segue ×1

swift4 ×1

uikit ×1

uitableview ×1

xcode ×1