问题列表 - 第42635页

适用于Mac和Win的C++跨平台UI框架?

我正在寻找一个UI框架,它将让我创建一个C++应用程序,在mac和win上查找/表现本机.原生我的意思是类似于IBM的AWT/SWT on Java的方法.

六年前没有这样的事情,现在有什么东西吗?

先感谢您.

c++ windows macos user-interface

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

OS X上的"ld:未知选项:-soname"

我尝试在Mac OS X上使用CMake构建我的应用程序,我收到以下错误:

Linking CXX shared library libsml.so
ld: unknown option: -soname
collect2: ld returned 1 exit status
make[2]: *** [libsml.so] Error 1
make[1]: *** [CMakeFiles/sml.dir/all] Error 2
make: *** [all] Error 2
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为Mac有.dylib扩展而不是.so.

有我的CMakeLists.txt:

cmake_minimum_required(VERSION 2.6)

PROJECT (SilentMedia)

SET(SourcePath src/libsml)

IF (DEFINED OSS)
SET(OSS_src
    ${SourcePath}/Media/Audio/SoundSystem/OSS/DSP/DSP.cpp
    ${SourcePath}/Media/Audio/SoundSystem/OSS/Mixer/Mixer.cpp
)
ENDIF(DEFINED OSS)

IF (DEFINED ALSA)
SET(ALSA_src
    ${SourcePath}/Media/Audio/SoundSystem/ALSA/DSP/DSP.cpp
    ${SourcePath}/Media/Audio/SoundSystem/ALSA/Mixer/Mixer.cpp
)
ENDIF(DEFINED ALSA)

SET(SilentMedia_src

    ${SourcePath}/Utils/Base64/Base64.cpp
    ${SourcePath}/Utils/String/String.cpp
    ${SourcePath}/Utils/Random/Random.cpp

    ${SourcePath}/Media/Container/FileLoader.cpp

    ${SourcePath}/Media/Container/OGG/OGG.cpp

    ${SourcePath}/Media/PlayList/XSPF/XSPF.cpp
    ${SourcePath}/Media/PlayList/XSPF/libXSPF.cpp
    ${SourcePath}/Media/PlayList/PlayList.cpp

    ${OSS_src}
    ${ALSA_src}

    ${SourcePath}/Media/Audio/Audio.cpp
    ${SourcePath}/Media/Audio/AudioInfo.cpp
    ${SourcePath}/Media/Audio/AudioProxy.cpp

    ${SourcePath}/Media/Audio/SoundSystem/SoundSystem.cpp
    ${SourcePath}/Media/Audio/SoundSystem/libao/AO.cpp

    ${SourcePath}/Media/Audio/Codec/WAV/WAV.cpp
    ${SourcePath}/Media/Audio/Codec/Vorbis/Vorbis.cpp
    ${SourcePath}/Media/Audio/Codec/WavPack/WavPack.cpp
    ${SourcePath}/Media/Audio/Codec/FLAC/FLAC.cpp
) …
Run Code Online (Sandbox Code Playgroud)

macos makefile cmake shared-libraries

24
推荐指数
3
解决办法
3万
查看次数

win32 c ++在子类化的编辑控件中检测'enter'?

基本上我想要一个Enter来触发一个消息,当编辑控件聚焦并且用户按下回车时我可以捕获该消息.所有在线解决方案似乎都是关于子类化的,但我想知道是否还有另一种方法呢?

例如,我的按钮具有标识符ID_BUTTON_SEND.这是我的想象;

case WM_COMMAND:
     switch (LOWORD(wParam))
            case ID_BUTTON_SEND
                 if ('enter was pressed') 
                      do this
                 else
                      default
Run Code Online (Sandbox Code Playgroud)

...你明白了:)我已经阅读了 http://support.microsoft.com/kb/102589, 但坦率地说,选项1对我来说没有多大意义.

干杯

c++ winapi controls edit button

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

提升跟踪登录用户

我在Boot.scala中有一个像这样定义的站点地图

   def sitemap() = SiteMap(
      Menu(S ? "Home") / "index",
      Menu(S ? "Login") / "login",
      Menu(S ? "Do Logged in Stuff") / "loggedinstuff"  >> If( () => loggedInUser.is != Empty, "You must be logged in") )
Run Code Online (Sandbox Code Playgroud)

此外,我在Boot.scala中定义了一个loggedInUser

object loggedInUser extends SessionVar[Box[String]](Empty)
Run Code Online (Sandbox Code Playgroud)

当我有用户登录时,我希望他们将我的loggedInUser更改为他们成功登录的用户名.

  • 这是处理用户登录的好方法吗?
  • 我应该在哪里保留我的loggedInUser对象.Boot.scala?别的地方?
  • 如何更新loggedInUser以便他现在可以显示"loggedinstuff"页面?

java scala lift session-state

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

从原始文件夹播放视频

晚间,

我刚开始使用android进行编程并制作了一些程序和所有内容所以我仍然是一个新手,但我试图理解这一切.

所以这是我的问题,我正在尝试播放一个视频,事情是,当我通过互联网从VideoView的URL流式传输或当我放入我的SD卡时,我得到了它.

我现在要做的是播放我在res/raw文件夹中的视频,但它只播放音频而且我不明白为什么,就我看来,它在我的logcat中没有给出任何错误,也无法真正找到谷歌的解决方案,因为大多数答案都是关于VideoView,只是将视频放在您的SD卡上.

现在有人告诉我,我必须使用setDisplay(SurfaceHolder),我也尝试过,但我仍然只能获得音频.

我希望有人可以帮我找到解决这个问题的方法.

VideoDemo.java

package nl.melvin.videodemo; 

import android.app.Activity; 
import android.os.Bundle; 
import android.media.MediaPlayer; 
import android.view.SurfaceHolder; 
import android.view.SurfaceView; 


public class videodemo extends Activity { 

    public SurfaceHolder holder; 
    public SurfaceView surfaceView; 


    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 


        MediaPlayer mp = MediaPlayer.create(this, R.raw.mac); 

        mp.setDisplay(holder); 
        mp.start(); 

      } 

} 
Run Code Online (Sandbox Code Playgroud)

XML

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout  
    xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/LinearLayout01"  
     android:layout_width="fill_parent"  
     android:layout_height="fill_parent" > 
    <SurfaceView 
        android:id="@+id/surfaceview" 
         android:layout_width="fill_parent" 
         android:layout_height="fill_parent"> 
     </SurfaceView>> 
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我也试过Uri.parse,但它说不能播放视频(.mp4格式).

android

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

jQuery this.text在现场活动后无法在IE中运行

我目前正在尝试使用一些jQuery函数更新我的网站.总而言之,随着网络开发IE一直是一个痛苦.

我有一个自动提示列表,如下所示:

<div id="suggestionBox">
    <ul>
        <li>
            <a class="entry" style="display:block;" href="#">somesuggestion</a>
        </li>
        ...
    </ul
</div>
Run Code Online (Sandbox Code Playgroud)

当然,建议是从服务器获得的,所以每次输入字段改变时我都会使用load()函数.这很好用.问题是,我希望在单击建议时完成输入字段.我使用以下代码:

$(".entry").live('click', function() {
    $("#" + $("#suggestionBox").data('input')).val(this.text);
    //and some more stuff
});
Run Code Online (Sandbox Code Playgroud)

当输入字段获得焦点时,将设置suggestionBox的数据字段.

它在Chrome和FireFox中运行得非常好,但在IE中则不然.上面代码中的this.text返回undefined.

我不知道为什么这不应该适用于IE.谁能帮我?

谢谢.

jquery internet-explorer this live

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

如何将div设置为输入文本表单?

使用textarea和input-text作为文本表单的输入存在一些缺点.textarea在右下角有一个恼人的三角形,输入文本是单行输入.

我尝试输入像facebook更新输入表单这样的文本.换行后自动调整大小.并且使用的元素或标签是<div>.我说"用过"是因为在重新设计Facebook后,我无法弄清楚现在使用的是哪个标签.有一个CSS属性,使用户可以编辑div元素中的文本.我实际上复制了CSS属性,但现在我丢失了它.有人能告诉我它是哪个CSS属性吗?我有一个弱内存,它以-webkit前缀开头

css webkit user-input input css3

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

Minecraft克隆的最佳盒子选择方法

我正在制作一个Minecraft克隆作为我的第一个OpenGL项目,我被困在盒子选择部分.选择可靠的盒子的最佳方法是什么?

我一直在研究一些AABB算法,但是没有一个能够很好地解释它们到底做了什么(尤其是超级调整的算法)并且我不想使用我不理解的东西.

由于世界是由立方体组成的,我使用八叉树来消除光线投射计算的一些压力,基本上我唯一需要的是这个函数:

float cube_intersect(Vector ray, Vector origin, Vector min, Vector max)
{
    //???
}
Run Code Online (Sandbox Code Playgroud)

光线和原点很容易获得

Vector ray, origin, point_far;
double mx, my, mz;

gluUnProject(viewport[2]/2, viewport[3]/2, 1.0, (double*)modelview, (double*)projection, viewport, &mx, &my, &mz);
point_far = Vector(mx, my, mz);
gluUnProject(viewport[2]/2, viewport[3]/2, 0.0, (double*)modelview, (double*)projection, viewport, &mx, &my, &mz);
origin = Vector(mx, my, mz);
ray = point_far-origin;
Run Code Online (Sandbox Code Playgroud)

min和max是立方体的对角.

考虑到我必须检查的立方体数量,即使是八叉树,我也不确定这是否是正确的方法.

我也试过gluProject,它有效,但非常不可靠,并没有给我选择的立方体面.


编辑

所以这就是我所做的:用光线计算太空中的位置:

float t = 0;
for(int i=0; i<10; i++)
{
    Vector p = ray*t+origin;
    while(visible octree)
    {
        if(p inside …
Run Code Online (Sandbox Code Playgroud)

c++ opengl picking

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

emacs在nowindow模式下将kill-ring复制到系统剪贴板

我在Ubuntu的终结器程序下运行"emacs -nw".我的问题,我无法使用它来杀死系统剪贴板.但是,如果在X11模式下运行,则可以正常工作.你可以帮帮我吗?

提前致谢..

emacs terminal clipboard mode

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

大规模图像存储

我可能会参与一个项目,其中一个重要组件是大量文件的存储(在这种情况下是图像,但它应该只是作为文件存储).

传入文件的数量预计约为每周500,000(平均每个约100 Kb),每天大约100,000个文件,每秒5个.在达到平衡状态之前,文件总数预计将达到数千万,其中文件因输入速率的各种原因而过期.

所以我需要一个系统,可以在高峰时间每秒存储大约5个文件,同时读取大约4个文件并随时删除4个文件.

我最初的想法是,一个简单的NTFS文件系统,其中包含一个简单的存储,过期和读取服务应该足够了.我可以想象服务创建每年,每月,每天和每小时的子文件夹,以保持每个文件夹的文件数量最少,并允许手动过期以防需要.

这里讨论了一个大型的NTFS解决方案,但我仍然可以使用一些建议来解决在构建具有上述规范的存储时会遇到的问题,期望的维护问题以及存在哪些替代方案.优选地,如果可能且实用的话,我想避免分布式存储.

编辑

感谢所有的意见和建议.关于该项目的更多奖励信息:

这不是最终用户提供图像的Web应用程序.没有透露太多,因为这是在合同阶段,它更多的是质量控制类别.想想带有传送带和传感器的生产工厂.这不是传统的质量控制,因为产品的价值完全取决于图像和元数据数据库的顺利运行.

自治应用程序以先进先出的顺序访问图像99%,但也会发生用户应用程序的随机访问.超过一天的图像将主要用于存档目的,但这一目的也非常重要.

由于各种原因,图像的到期遵循复杂的规则,但在某些日期,应删除所有图像.删除规则遵循依赖于元数据和用户交互的业务逻辑.

每天都会有停机时间,可以进行维护.

优选地,文件存储器不必将图像位置传送回元数据服务器.如果选择某种散列或分布式系统,则可以通过映射数据库从元数据中唯一地扣除图像位置.

所以我的问题是:

  • 哪些技术可以做得很好?
  • 哪些技术的实施成本最低?
  • 客户的IT部门最容易维护哪些技术?
  • 这种规模的特定技术有哪些风险(5-20​​ TB数据,10-100万个文件)?

architecture ntfs

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