问题列表 - 第5287页

打开Excel文件,无需显示即可使用VBA进行读取

我想用宏搜索现有的Excel文件,但我不希望在代码打开这些文件时显示这些文件.有没有办法让它们在"背景"中打开,可以这么说?

excel file-io vba excel-vba

58
推荐指数
7
解决办法
28万
查看次数

在C与C++中编译但执行方式不同的代码示例

我正在寻找在C(任何标准)和C++下编译的更多示例,但运行方式不同.作为一个例子,我在comp.lang.c中找到了它,它为C生成8,为C++生成512:

#include <stdio.h>

struct A { char block[8]; };

int main(void) {
    struct B {
        struct A {
            char block[512];
        } a;
    };

    printf("sizeof(struct A) = %lu\n",
        (unsigned long) sizeof(struct A));
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

有没有人有这方面的例子,特别是没有使用这个特殊技巧的人?

c c++

10
推荐指数
0
解决办法
685
查看次数

访问boost线程对象的成员变量

我正在使用一个对象来启动boost线程,它有一些我在线程中修改的公共成员变量(在()运算符中).如何从线程外部访问对象的成员变量?

我尝试使用在对象的operator()和外部锁定的互斥锁(在对象的类中定义),但它似乎不起作用.

这是线程对象代码:

struct Mouse
{
  int x, y;
  string port;

  boost::mutex mutex;

  Mouse(const string& p) : port(p) { x = y = 0; }
  Mouse(const Mouse& m) : mutex() { x = m.x; y = m.y; port = m.port; }

  void operator()()  
  {
    ifstream ifs;
    ifs.open (port.c_str(), ios::binary );
    if (!ifs.is_open())
    {
      cout << "Impossible d'ouvrir " << port.c_str() << "\n";
      exit(0);
    }
    while (true) //modify x, y in infinit loop
      {
    char buf[3];
    ifs.read(buf, 3);
        unsigned char * …
Run Code Online (Sandbox Code Playgroud)

c++ multithreading boost

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

RJS:Ajaxified select_tag

由于我在上一个问题上没有得到预期的答案,我会尝试简化和缩小我的问题:

如何构建一个使用AJAX(无提交按钮)来调用某个控制器的show动作的下拉菜单?

给出以下内容:

模型关联类别HABTM项目,因此下拉菜单包含所有类别名称.

应该实现下拉菜单的视图部分.下拉菜单下方是一个项目列表,应根据下拉菜单中的选择进行更改:

   <!-- placeholder for AJAX dropdown menu -->

   <!-- list of projects related to categories chosen by the select tag -->
   <ul class="projects">
     <% @projects.each do |_project| %>
       <li>
         <%= link_to(_project.name, _project) %>
       </li>
     <% end %>
   </ul>
Run Code Online (Sandbox Code Playgroud)

具有应该调用的show-action 的Categories控制器:

class CategoriesController < ApplicationController
  def show
    # params[:id] should be the choice the user made in the dropdown menu
    @category = Category.find(params[:id])
    @projects = @category.projects.find(:all)

    respond_to do …
Run Code Online (Sandbox Code Playgroud)

javascript ruby ruby-on-rails rjs

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

什么是将两个序列组合成字典的Pythonic方法?

有没有更简洁的方法在Python中执行此操作?:

def toDict(keys, values):
  d = dict()
  for k,v in zip(keys, values):
    d[k] = v

  return d
Run Code Online (Sandbox Code Playgroud)

python

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

我可以让vim尊重我的.gitignore文件吗?

我想知道是否有办法让vim读取.gitignore文件并使用它们来确定自动完成文件名时不显示的选项.

例如,在python中工作,我不希望看到提供编辑的.pyc文件.我认为vim有自己的机制,我想知道如何从.gitignore加载信息.

git vim gitignore

14
推荐指数
2
解决办法
4876
查看次数

复制/粘贴在模态窗口中不起作用

在我的cocoa应用程序中,我使用以下命令将NSPanel显示为另一个NSPanel的模态"窗口":

[modalPanel setWorksWhenModal:YES];
[[NSApplication sharedApplication] beginSheet:modalPanel modalForWindow:mainPanel modalDelegate:nil didEndSelector:nil contextInfo:nil];
Run Code Online (Sandbox Code Playgroud)

这是有效的,但是在该模态"窗口"中显示的NSTextField不允许复制和粘贴.

从搜索我发现Cocoabuilder上的以下线程看起来几乎是同样的问题,但是在该线程中也没有给出解决方案.

http://www.cocoabuilder.com/archive/message/cocoa/2007/11/6/192462

该线程说要确保您没有通过使用验证来停止复制/粘贴,但对我来说情况并非如此,因为我目前没有对任何字段进行任何验证.

有什么特别的东西我必须要做到这一点,或者有没有人对我可以检查/尝试的任何想法?

谢谢!

cocoa objective-c

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

NHibernate中未映射的列?

我正在使用Oracle中的遗留数据库,我的一些表中的列设置为NOT-NULL,我不想在我的域模型中使用,但是,显然,我需要在某处指定至少一些默认值保存到数据库(例如,Groups表可能有一个"Indentation"列,因为thaqt总是需要char(8)值).

我将如何在NHibernate中进行此操作?是否有捷径可寻?如果没有,有没有人知道我可以这样做的方式(我已经考虑过使用Inteceptor,但实际上不知道从哪里开始......).我无法更改数据库架构,所以这可能不是一个选项(流畅的版本也可以......).

nhibernate nhibernate-mapping fluent-nhibernate

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

RTTI有多贵?

我知道使用RTTI会造成资源损失,但它有多大?我看起来只是说"RTTI很贵",但它们实际上都没有给出任何基准或定量数据来控制内存,处理器时间或速度.

那么,RTTI有多贵?我可能会在我只有4MB RAM的嵌入式系统上使用它,所以每一位都很重要.

编辑:根据S. Lott的回答,如果我包括我实际做的事情会更好. 我正在使用一个类传递不同长度的数据,并且可以执行不同的操作,因此仅使用虚函数很难做到这一点.似乎使用少数dynamic_casts可以通过允许不同的派生类通过不同的级别但仍然允许它们以完全不同的方式行动来解决这个问题.

根据我的理解,dynamic_cast使用RTTI,所以我想知道在有限的系统上使用它是多么可行.

c++ performance rtti

146
推荐指数
7
解决办法
7万
查看次数

当要滚动的项目太多时,Windows窗体列表框会溢出

我正在构建一个基于后缀树的索引器应用程序,这使我能够非常快速地索引整个文档和搜索字符串,子字符串等.

我正在做的是在文本框中输入一个字符串,按下按钮,并运行查询后缀树的函数,并将字符串的所有出现位置添加到列表框中.所以列表框里面有很多整数.

通常,这很好.例如,搜索"向导"或"Gandalf",或"hobbit"(我将FOTR索引为测试:D)工作正常且花花公子.但是,我现在用字母e来试试.

问题是字母e的位置确实列在列表框中.全部88974个.然而,当我向下滚动通过拖动滚动条按钮,列表框似乎循环回到顶端当我在各地的项目60000个左右.由于我尝试滚动页面并且一切正常,因此问题更加严重.

我知道,通过88974(基于listbox.Items.Count)项目的滚动是有点极端,但在逻辑上,没有任何理由应该有这样的问题.

感谢您阅读这篇文章!

编辑:对所有回答的人,谢谢你回答.我最终使用listview实现了它,并且速度更快,可以很好地保存很多项目.谢谢!

.net c# listbox winforms

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