小编UpA*_*dam的帖子

QTableView 根据值更改行颜色

我有一个QTableView用我自己的模型子类实现的QAbstractTableModel. 当行中的某个字段具有特定值时,我希望能够将行颜色更改为红色。我看到很多例子,答案是调用模型setData并用于Qt::BackgroundRole更改背景颜色。由于我对AbstractTableModel我重新实现进行了子类化setDatadata因此调用模型setData对背景颜色角色没有任何作用,因为我只处理角色为 的数据Qt::DisplayRole

我想我的第一个问题是:有没有更简单的方法来改变整个角色的颜色?如果没有,我猜我必须实现该部分setDatadata处理BackgroundRole我不知道该怎么做的情况,如果有人有关于如何做到这一点的示例,那真的会有很大帮助......

c++ qt qtableview qabstracttablemodel

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

tf_rep.export_graph(tf_model_path): KeyError: 'input.1

我正在尝试将onnx模型转换为tflite,我面临执行行错误tf_rep.export_graph(tf_model_path)。这个问题之前在 SO 中被问过,但没有提供明确的解决方案。

安装要求:tensorflow: 2.12.0, onnx 1.14.0, onnx-tf 1.10.0,Python 3.10.12

  import torch
  import onnx
  import tensorflow as tf
  import onnx_tf
  from torchvision.models import resnet50

  # Load the PyTorch ResNet50 model
  pytorch_model = resnet50(pretrained=True)
  pytorch_model.eval()

  # Export the PyTorch model to ONNX format
  input_shape = (1, 3, 224, 224)
  dummy_input = torch.randn(input_shape)
  onnx_model_path = 'resnet50.onnx'
  torch.onnx.export(pytorch_model, dummy_input, onnx_model_path, opset_version=12, verbose=False)

  # Load the ONNX model
  onnx_model = onnx.load(onnx_model_path)

  # Convert …
Run Code Online (Sandbox Code Playgroud)

python deep-learning tensorflow-lite onnx

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

Java:操作数组

我理解如何array按升序和降序排序,但我正在尝试创建一个特定的模式.例如,我有array一个随机顺序.我将如何array在模式中对此进行排序?"最小,最大,第二小,第二大,第三大,第三大......"等等.有什么想法吗?

int[] pattern = {8, 6, 1, 2, 3, 80, 56};
Run Code Online (Sandbox Code Playgroud)

//这是开始

public class Test2 {

    public static void main(String[] args) {
        int[] array = {1,4,2,6,9,3,65,77,33,22};
        for (int i = 0; i < array.length; i++) {
            System.out.print(" " + array[i]);
        }
        wackySort(array);

    }

    //This sorts the array    
    public static void wackySort(int[] nums) {
        int sign = 0;
        int temp = 0;
        int temp2 = 0;
        for (int i = 0; i < nums.length; i++) …
Run Code Online (Sandbox Code Playgroud)

java arrays

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

c ++如何创建一个函子的std :: vector

class A
{
public:
    int x;
    //create a vector of functors in B and C here
};

class B
{
public:
    struct bFunctor
    {
        void operator()() const
        {
            //some code
        }
    };
};

class C
{
public:
    struct cFunctor
    {
        void operator()() const
        {
            //some code
        }
    };

};

void main()
{
 A obj;
 //iterate through the vector in A and call the functors in B and C
}
Run Code Online (Sandbox Code Playgroud)

我的问题是什么应该是格式vectorA调用functorsBC?或者是,这是有可能有一个基础的唯一途径 …

c++

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

如何正确重载postfix增量运算符?

有没有办法修改此代码,以便在编译时不会收到警告?此外,这个代码可能不会导致段错误,因为它将访问的内存检索在运算符函数调用结束时取消分配的main中的x值?

class A {

  int x; /* value to be post-incremented */

  public:

  A() {  /* default constructor */
  }

  A( A & toCopy ) {   /* copy constructor */
    x = toCopy.x;
  }

  A & operator++(int) {  /* returns a reference to A */

    A copy( *this );         /* allocate a copy on the stack */
    ++x;

    return copy;            /* PROBLEM: returning copy results in a warning */

  }                         /* memory for copy gets deallocated */

}; /* end …
Run Code Online (Sandbox Code Playgroud)

c++ operator-overloading compiler-warnings postfix-operator

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

Rails 4:Turbolinks 发送请求两次并重新加载页面

我正在使用 Rails 4.1.1 和 Ruby 2.1.0 开发 Ruby on Rails 应用程序。

我已将应用程序设置为使用 Turbolinks,这会导致 AJAX 链接出现问题。当我单击调用 AJAX 函数的链接时,会发生三件事:
1. 进行 AJAX 调用
2. 重新加载相同的链接
3. 应用程序服务器运行所有请求两次。

如何使这些链接作为标准的 AJAX 链接运行?

作为参考,这是我的相关部分GemFile

gem 'turbolinks'
gem 'jquery-turbolinks'
Run Code Online (Sandbox Code Playgroud)

以下是我在 中包含 JavaScript 库的方式application.js

//= require jquery
//= require jquery.turbolinks
//= require jquery_ujs
//= require turbolinks
Run Code Online (Sandbox Code Playgroud)

这是我在应用程序布局中包含 JavaScript 文件的方式:

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
Run Code Online (Sandbox Code Playgroud)

javascript ruby ajax turbolinks ruby-on-rails-4.1

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

在python中绘制三个变量的函数

我想为此功能绘制轮廓线,但是找不到任何有用的方法。

潜在的功能是: V(x,y,z) = cos(10x) + cos(10y) + cos(10z) + 2*(x^2 + y^2 + z^2)

我未成功尝试以下操作:

import numpy
import matplotlib.pyplot.contour

def V(x,y,z):
    return numpy.cos(10*x) + numpy.cos(10*y) + numpy.cos(10*z) + 2*(x**2 + y**2 + z**2)

X, Y, Z = numpy.mgrid[-1:1:100j, -1:1:100j, -1:1:100j]
Run Code Online (Sandbox Code Playgroud)

但是然后,我不知道下一步如何绘制它?

matplotlib.pyplot.contour(X,Y,Z,V)
Run Code Online (Sandbox Code Playgroud)

python matplotlib

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

C++概念与完美转发

我对容器类型有一个相对简单的概念定义,它接受特定的值类型:

template <typename T>
concept FooContainer = requires(T cont){
    std::begin(cont);
    std::end(cont);
    requires std::is_same_v<typename T::value_type, Foo>;
};
Run Code Online (Sandbox Code Playgroud)

我想定义一个可以接受两个参数的函数,每个参数都是满足这个概念的任何容器类型。到目前为止我已经

    void func(const FooContainer auto& cont1, const FooContainer auto& cont2){
        // ...
    }
Run Code Online (Sandbox Code Playgroud)

这工作正常,我可以将任何我想要的左值或右值传递到 cont1 或 cont2 中,因为我认为 C++ 自动将 a 绑定const lvalue referencervalue参数。不过,我想知道这里如何利用完美转发,以便将值类别自动转发到函数中。

我知道转发引用只能在模板化函数中使用,但这让我有点困惑,因为参数已经是模板化概念......

我尝试在不同的地方添加:即在概念&&模板中添加,但不确定它到底有什么作用。typename T

c++ templates perfect-forwarding c++-concepts c++20

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

检查输入是否等于数组中的值?

我想检查它input是否等于数组中的任何选项.我该怎么做?我可以不使用很多||运营商吗?

    //check if any input in herp[] was entered
    string input;
    string herp[2] = {"Merp", "Derp"}
    cin >> input;
    if (input == "connect "+herp[0]||"connect "+herp[1]) {
        cout << "poopie" << endl;
    }
Run Code Online (Sandbox Code Playgroud)

c++ arrays cin

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

为什么我的滚动 adler32 校验和在 go 中不起作用?(模算术)

我正在 go 中实现adler32 checksum滚动版本。

这个答案有助于仔细检查我的数学。然而我很难在 golang 中正确实现它。

我写了以下代码:

func roll(adler, n, leave, enter uint32) uint32 {
    a := adler & 0xffff
    b := adler >> 16

    a = (a + enter - leave) % MOD
    b = (b - n*leave - 1 + a) % MOD
    return b<<16 | a
}
Run Code Online (Sandbox Code Playgroud)

它在各种输入上进行了测试,并且运行良好,直到我决定在随机数据上运行它。这是一个不起作用的示例(我找到了其中几个)。

令我困惑的是,Python 中的相同代码在这些输入上完美运行:

def roll(adler, n, leave, enter):
    a = adler & 0xffff
    b = adler >> 16

    a = (a + …
Run Code Online (Sandbox Code Playgroud)

checksum go modulo adler32

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