我使用Qt小部件设置背景图像(JPEG)setStyleSheet().这完全显示在我的计算机上,但不能在另一台计算机上显示.
我没有在另一台计算机上收到链接错误 - 该功能不起作用.在我的应用程序的分发或构建中是否存在我缺少的东西,Qt开发工具安装或以其他方式可用,这在其他机器上不存在?如何分发使用JPEG功能的Qt应用程序?
QPixmap pic("../image.jpg");
setAutoFillBackground(true);
QPalette palette;
QPixmap scaled=pic.scaled ( 800, 480, Qt::IgnoreAspectRatio, Qt::FastTransformation );
palette.setBrush(QPalette::Window, QBrush(scaled));
//this->setPalette(palette);
QWidget *w= new QWidget(this);
w->setGeometry(0,0,800,480);
w->show();
w->setPalette(palette);
Run Code Online (Sandbox Code Playgroud)
但小部件不显示任何图像.
我有两个问题
1)如何检查两个随机字符串是否具有相同的字符就像我一样
var str1 = "ansar@#//1";
var str2 = "@#//sanra1";
Run Code Online (Sandbox Code Playgroud)
应该返回 true
2)如果没有相同的字符,那么第二个字符串中不存在哪些字符
var str1 = "ansar@#//123";
var str2 = "@#//sanra";
Run Code Online (Sandbox Code Playgroud)
应该返回 123
我知道我可以通过以下方式得到第一个问题的答案
str1.length===str2.length && str1.split("").sort().join() == str2.split("").sort().join();
Run Code Online (Sandbox Code Playgroud)
但不确定如何获取与第二个字符串不匹配的字符
我有一个模型用户,我们有primary_key作为user_id而不是id,我知道我应该使用id为primary_key,但客户希望我们应该使用user_id而不是id.
我有另一个表,我必须将该表与user_id相关联
我正在为其他表添加这样的迁移:
t.references :user, index: true, foreign_key: true
Run Code Online (Sandbox Code Playgroud)
但是当我运行迁移时,我得到一个与外键约束相关的错误,例如:
ActiveRecord :: StatementInvalid:PG :: UndefinedColumn:ERROR:外键约束中引用的列"id"不存在ALTER TABLE"user_devices"ADD CONSTRAINT"fk_rails_e700a96826"FOREIGN KEY("user_id")REFERENCES"users"("id")
似乎rails默认尝试将其他表指向id列,但我在users表中有user_id.
那么如何添加外键约束,如:
ALTER TABLE "user_devices" ADD CONSTRAINT "fk_rails_e700a96826"
FOREIGN KEY ("user_id")
REFERENCES "users" ("user_id")
Run Code Online (Sandbox Code Playgroud)
使用rails迁移?
我需要获取目录和子目录中的所有文件,并且每个文件的日期都附加到文件名,如product_log_2016-11-17.txt
获取我使用的目录中存在的文件列表
all_logs = Dir["#{Rails.root}/log/product_logs/**/*.txt"]
Run Code Online (Sandbox Code Playgroud)
它返回这样的完整路径文件(我已从每个条目中删除了我的系统路径:
[
"/log/product_logs/new_2/product_log_2016-11-17.txt",
"/log/product_logs/new_2/products_log_2016-11-03.txt",
"/log/product_logs/new_1/products_log_2016-10-04.txt",
"/log/product_logs/new_1/product_log_2016-11-17.txt",
"/log/product_logs/new_1/products_log_2016-11-03.txt"
]
Run Code Online (Sandbox Code Playgroud)
但是我希望像这样按日期排序:
[
"/log/product_logs/new_2/product_log_2016-11-17.txt",
"/log/product_logs/new_1/product_log_2016-11-17.txt",
"/log/product_logs/new_2/products_log_2016-11-03.txt",
"/log/product_logs/new_1/products_log_2016-11-03.txt",
"/log/product_logs/new_1/products_log_2016-10-04.txt"
]
Run Code Online (Sandbox Code Playgroud)
我试过这样的:
all_logs.sort{|a, b|b.split("/").last.split("_").last.split(".").first <=>a.split("/").last.split("_").last.split(".").first }
Run Code Online (Sandbox Code Playgroud)
哪个有效,但似乎不是一个好的解决方案,任何人都可以让我知道什么是最好的方式来输入这种类型的列表?