我正在使用Windows API创建一个基本的GUI,我遇到了一个问题.它以一个主窗口开始,该窗口以我设置的自定义背景颜色打开(RGB(230,230,230)).然后它使用静态控件在左上角显示文本.
settingstext = CreateWindow("STATIC",
"SETTINGS",
SS_LEFT | WS_CHILD,
12,
20,
100,
20,
hwnd,
NULL,
proginstance,
NULL);
ShowWindow(settingstext, 1);
Run Code Online (Sandbox Code Playgroud)
这是有效的,但是当显示文本时,我需要一种方法来改变它的背景以匹配主窗口,否则它看起来就像它没有混合在一起.
我的问题是,我该怎么做?我目前使用下面的方法,它的工作原理,但我想知道,有没有办法永久设置背景颜色,CreateWindow在静态控件的功能之后,而不改变系统颜色,只是让它适用于那一个控件而不是任何发送WM_CTLCOLORSTATIC消息的东西.我已经尝试使用消息循环之外的GetDC函数和SetBkColor函数,但没有任何作用.
case WM_CTLCOLORSTATIC:
{
HDC hdcStatic = (HDC) wParam;
SetTextColor(hdcStatic, RGB(0,0,0));
SetBkColor(hdcStatic, RGB(230,230,230));
return (INT_PTR)CreateSolidBrush(RGB(230,230,230));
}
Run Code Online (Sandbox Code Playgroud)
我想这样做是因为......
我非常感谢能提供的任何帮助,至少指出我正确的方向,谢谢.
我正在PHP中创建一个类,我只有表名的参数并获取所有列和值.但我不知道如何获得带有外键的列的值.
那是因为我不知道哪个表是相关的.
我需要一种方法,我可以从已知的表中获取带有PHP或SQL的外键吗?
给定一个字符串:
" Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut",之后打破它
使用最大语言版本C# 4(为了与Mono平台兼容).
更新/编辑:
正则表达式实现:
广告#2 - 在40个字符后分割(请参阅此要点)
using System;
using System.Text.RegularExpressions;
Regex.Split(
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut"
, "(.{40})"
, RegexOptions.Multiline)
.Where(s => !string.IsNullOrEmpty(s))
.ToArray();
Run Code Online (Sandbox Code Playgroud)
这篇文章是一个社区维基.
我使用ASP.NET MVC和Jquery,这似乎是一个jquery错误.
我正在对我的方法进行ajax调用,我的代码是
$('.reopenBtn').live('click', function () {
var taskId = $(this).attr("data-taskid");
$.ajax({
url: '/Task/ReopenTask/?strTaskId=' + taskId,
type: "POST",
success: function (data) {
// this does not work !!
$(this).parent().parent().closest("div").remove();
},
error: function (xhr, ajaxOptions, thrownError) {
alert('Error');
}
});
});
Run Code Online (Sandbox Code Playgroud)
在remove这个问题创建的jsfiddle时不工作,但在这里,这个工程.
那么,$(this)在ajax调用的成功函数中有什么不同吗?
我该如何解决这个问题?谢谢
我有一个事务表,我的问题是跟踪transactionDateTime列.使用SQL,我似乎无法获取DATE或TIMESTAMP格式化,以便任何插入的数据必须在任何给定的一天上午8点到晚上10点之间:
CREATE TABLE Transaction_T
(transactionID NUMBER(8,0) ,
employeeID NUMBER(10,0) NOT NULL,
customerID NUMBER(6,0) NOT NULL,
transactionDate VARCHAR2(9) NOT NULL,
transactionPayment VARCHAR2(10) check(transactionPayment IN('cash','credit','debit','ebt')),
transactionType VARCHAR2(10) check(transactionType IN('void','return','sale')),
transactionDateTime TIMESTAMP check(transactionDateTime < '% 22:00:00' AND transactionDateTime > '% 08:00:00') NOT NULL,
CONSTRAINT TransactionPK PRIMARY KEY (transactionID),
CONSTRAINT TransactionFK1 FOREIGN KEY (employeeID) REFERENCES Employee_T(employeeID),
CONSTRAINT TranscationFK2 FOREIGN KEY (customerID) REFERENCES Customer_T(customerID));
Run Code Online (Sandbox Code Playgroud)
上面的表是创建的,但是在尝试插入正确的时候Date(Time),我会收到1到12小时之间的格式错误,或者当时间低于12时没有有效月份.我使用了Oracle文档格式但仍然没有运气:
INSERT INTO
transaction_T(transactionID, employeeID, customerID, transactionDate, transactionPayment, transactionType, transactionDateTime)
VALUES(00000001, 0001, 000004, …Run Code Online (Sandbox Code Playgroud) 我有几个变量分配给同一个函数。属性“name”是“”,因为这个函数是匿名的;
也没有涉及函数调用,因此没有被调用者。
JS 中有没有办法通过自实现的反射算法来获取变量的名称?
例如
var x = function(){}
var myUnknownNamedVar1 = myUnknownNamedVar2 = x;
Run Code Online (Sandbox Code Playgroud)
背景:
为了空间效率,数以千计的变量名被分配给与延迟加载的树桩相同的“静态”函数,在第一次调用时会解析为单个函数。(变量名还包含一个命名空间)。
替代品:
我的替代方法是使用诸如 {_name: myUnknownNamedVar1 , _fn: x}
这个问题的解决方案会很有趣。一个特殊的问题是在脚本中辨别具有不同名称的变量,它们指向同一个对象。
我得到了一个Unhandled Exception: System.NotSupportedException: Operation is not supported.使用Ubuntu 11.10在Mono下引发的异常.
阅读财产有效.该文档可能表明,该方法不构成问题.
关于如何最好地处理或解决这种情况的任何想法?
我目前的解决方案相当尴尬,并没有解决通过System.Console-API设置窗口大小的问题:
const int defaultConsoleWindowWidth = 80;
const int defaultConsoleWindowHeight = 25;
if (pid != PlatformID.Unix && pid != (PlatformID)128) {
System.Console.WindowHeight = lastConsoleWindowHeight;
System.Console.WindowWidth = defaultConsoleWindowWidth;
}else{
//assume *NIX system
try {
var p = new Process();
p.StartInfo = new ProcessStartInfo(@"stty cols " + defaultConsoleWindowWidth + " rows " + lastConsoleWindowHeight, "-n")
{
UseShellExecute = false
};
p.Start();
p.WaitForExit();
}
catch …Run Code Online (Sandbox Code Playgroud) 我无意中输入time.clock<()了Python 2.7解释器响应:True.以下代码举例说明了该行为:
>>> repr(time.clock)
'<built-in function clock>'
>>> time.clock<()
True
Run Code Online (Sandbox Code Playgroud)
此外:
>>> import sys
>>> sys.maxint < ()
True
>>> map(lambda _:0<_,((),[],{}))
[True, True, True]
Run Code Online (Sandbox Code Playgroud)
相反:
>>> 1<set(())
TypeError: can only compare to a set
Run Code Online (Sandbox Code Playgroud)
问题:除了为什么,是否存在空洞的实际意义或目的list,tuple或dict评估好像是否大于任何数字?
更新:
Viktor指出默认情况下会比较内存地址:
>>> map(lambda _:(id(0),'<',id(_)),((),[],{}, set([])))
[(31185488L, '<', 30769224L), (31185488L, '<', 277144584L), (31185488L, '<',
279477880L), (31185488L, '<', 278789256L)]
尽管看似顺序,但这是不正确的.
如果没有定义明确的比较运算符,Python 2将使用Numbers和Type-names进行比较,其中数字的优先级最低.
这并未暗示正在调用的内部方法.另见这个有用但不确定的SO线程:
在IPython 2.7.5 …
javascript ×2
.net ×1
boolean ×1
c# ×1
c#-3.0 ×1
c++ ×1
collections ×1
comparison ×1
console ×1
controls ×1
exception ×1
foreign-keys ×1
get ×1
innodb ×1
jquery ×1
line-breaks ×1
logic ×1
mono ×1
mysql ×1
newline ×1
oracle ×1
php ×1
plsql ×1
python ×1
scope ×1
sql ×1
static ×1
text ×1
variables ×1
winapi ×1
window ×1