小编alx*_*cyl的帖子

如何捕获JFrame的关闭按钮单击事件?

我想在confirmExit()单击JFrame标题栏的红色关闭按钮时调用方法.

我该如何捕获该事件?

如果用户选择不继续,我还想阻止窗口关闭.

java swing jframe windowlistener

82
推荐指数
2
解决办法
15万
查看次数

类上的外部定义错误,但它在头文件中声明

现在这是一个奇怪的问题.我两天前编码并停止,然后继续.在我的头文件(Fruit.h)上,我添加了一个名为animateGrow()like 的方法:

Fruit.h:

class Fruit {
private:
   // Member variables here

public:
   // Other methods here
   void animateGrow( );
};
Run Code Online (Sandbox Code Playgroud)

但是当我尝试在CPP文件中添加相同的方法时,我收到Out-of-line definition of 'animateGrow' does not match any declaration in 'Fruit'错误.它在标题中声明,但Xcode似乎无法找到该方法.

Fruit.cpp:

#include "SimpleAudioEngine.h"
#include "Fruit.h"
#include "Tree.h"

using namespace cocos2d;
using namespace CocosDenshion;

Fruit::Fruit( ) {
   // Constructor
}

// Getter Methods
// Setter Methods
// Other Methods

void Fruit::animateGrow( ) {
   // I get an error here when I type it.
} …
Run Code Online (Sandbox Code Playgroud)

c++ xcode cocos2d-x

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

当条件满足时,告诉std :: thread杀死/停止它自己

假设我有一个工作线程tWorker,它在Boss构造时被初始化并告诉它要做work(),直到bRetired为真.An std::mutex,mtx锁定一些data(vFiles),以便tWorker在他处理它时拥有它.

怎样使tWorker"自杀"一度bRetired成为truemutex当线程停止执行时如何销毁?

我已经读过,std::thread对象不能以任何方式中断.让线程什么也不做(或调用std::this_thread::yield())提供与杀死线程相同的效果?

class Boss {
private:
    std::thread tWorker;
    std::mutex mtx;
    bool bRetired;
    std::vector< std::string > vFiles;

    void work() {
        while ( bRetired == false ) {
            // Do your job!
            mtx.lock();
            // ... Do something about vFiles ...
            mtx.unlock();
        }

        // tWorker has retired, commit suicide
        // ** How? **

        // …
Run Code Online (Sandbox Code Playgroud)

c++ multithreading c++11 stdthread

10
推荐指数
2
解决办法
4万
查看次数

我是否必须在每个头文件上输入typedef?

比方说,我有一个std::vectorstd::string秒.

// Foo.h
class Foo {
    std::vector< std::string > mVectorOfFiles;
}
Run Code Online (Sandbox Code Playgroud)

然后我常常typedef把它变成一种StringVector类型.

// Foo.h
typedef std::vector< std::string > StringVector;

class Foo {
    StringVector mVectorOfFiles;
}
Run Code Online (Sandbox Code Playgroud)

如果我有另一个拿一个StringVector对象的课......

// Bar.h
class Bar {
    Bar( const StringVector & pVectorOfFiles ); // I assume this produces a compile error (?) since Bar has no idea what a StringVector is
}
Run Code Online (Sandbox Code Playgroud)

...我必须typedef在头文件中再次使用Bar吗?

// Bar.h
typedef std::string< std::vector > StringVector;
class Bar …
Run Code Online (Sandbox Code Playgroud)

c++ oop typedef

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

在Google Analytics V4中,我应该发送哪个屏幕名称?

我按照本指南在我的Android应用中实施了Google Analytics.我无法理解该文件.

在文档中,它说创建一个XML文件,并将其作为内容:

<screenName name="com.mycompany.myapp.MainActivity">
        SomeApp MainActivity
</screenName>
Run Code Online (Sandbox Code Playgroud)

要发送屏幕视图,我必须这样做:

Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(TrackerName.APP_TRACKER);
t.setScreenName(screenName);
t.send(new HitBuilders.AppViewBuilder().build());
Run Code Online (Sandbox Code Playgroud)

但是,我不确定这screenName应该是什么.是name值(com.mycompany.myapp.MainActivity)还是screenName值(SomeApp MainActivity)?

android google-analytics google-analytics-firebase

7
推荐指数
3
解决办法
2969
查看次数

使用COCOS2D-X进行文件I/O.

我正在尝试加载一个名为的逗号分隔文件POSDATA.GAMEDATA.我在互联网上查了几个地方,结果发现我需要做一些调整和/或不同的课程.

我试过用ifstream.但是,它无法打开文件.Xcode 4.3.2似乎找不到我的POSDATA.GAMEDATA文件.我也尝试使用该文件,ofstream但是当我open()在两种情况下使用时,文件都没有打开.

我的代码是这样的:

using namespace std;
void FileLoader::loadFile( string p_WhichFile ) {
   // Local Variables
   string thisLine;

   // Open POSDATA.GAMEDATA
   ifstream dataStream;
   dataStream.open( p_WhichFile.c_str( ) );

   // Check if file is opened
   if ( !dataStream ) {
      cerr << "[ ERROR ] Cannot load file:" << p_WhichFile.c_str( ) << endl;
      exit( 1 );
   }

   // Get lines of strings
   while ( getline( dataStream, thisLine ) ) {
      fileContents.push_back( thisLine …
Run Code Online (Sandbox Code Playgroud)

c++ xcode cocos2d-x

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

我需要在Java中使整个程序可以访问变量

所以我的问题是这个.我有一个叫做的类Globals,它包含我在整个程序中需要的所有变量.它适用于字符串,整数和其他可以使用=操作的东西.例如:

public class Globals {
   public static int globalInteger = 23;
   public static String globalString = "Hello, dude.";
   public static UserProfile globalUserProfile;
}
Run Code Online (Sandbox Code Playgroud)

在项目的某个地方,我使用以下方法访问它们:

Globals.globalInteger += 17;

Globals.globalString = "Why, hello there!";

但是,我正在尝试创建一个我自己写的全局类(UserProfiles.class).这个类不使用该=操作,因此,总是null当我从其他地方访问它时,我得到了java.lang.nullPointerException.例如,如果我这样做(newProfile(String)是一个方法UserProfiles.class):

Globals.globalUserProfile.newProfile(profileName);

我得到java.lang.NullPointerException.如何UserProfile.class在整个项目中使我的变量可访问?提前致谢.

java global-variables

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

沙箱:是否可以模拟失败或中断的In App Purchase?

我最近在我的应用程序中实现了In App Purchasing.Apple很好地记录了整个过程.

使用这些文档,我终于能够通过Sandbox测试In App Purchasing,这是一个非常方便的功能.我已经成功测试了我的应用程序,以便StoreKit当我点击时它对任何返回做出反应buyButton.

现在这是我的问题.从文档中可以看出,Sandbox模拟了没有财务资源的交易流程.所以我可以随意购买(顺便说一下,我买的是消耗品,只有消耗品).此外,Sandbox将始终模拟成功的交易,无论如何.那么,是否有可能让Sandbox模拟失败的事务,更好的是,中断事务?

我想这样做是为了在这些事件发生时捕获可能的错误(虽然我已经阅读过StoreKit已经处理过的地方)并在屏幕上显示它们(至少),只是为了告知用户在交易过程中发生了什么.

提前致谢.

app-store storekit in-app-purchase ios

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

如何导出AAR包括其依赖项?

我有一个使用library.aar和的Android Studio库项目library.jar.当我出口它mylib.aar,并使用这个新的AAR到不同的应用程序/项目,它无法找到在定义的类library.aarlibrary.jar.

build.gradle看起来像这样:

apply plugin: 'com.android.library'
android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"
    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
}
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(':library_dot_aar')
    compile project(':library_dot_jar')
}
Run Code Online (Sandbox Code Playgroud)

我在Android Studio中导入了AAR和JAR文件New -> Module -> Import .JAR or .AAR Package,并将它们作为依赖项添加到Project Structure -> Module Settings -> Dependencies -> Add Module Dependencies.

当我解压缩mylib.aar它只有25KB(考虑library.aar超过300KB,我假设mylib.aar的大小将在相同的范围内)并且包含的​​依赖项不包括在其中.如何导出包含其内部所有依赖项的AAR?

android android-studio

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

更改ImageIcon对象透明度(alpha)

我的目标是让多个面板上的图像具有相互叠加的alpha通道(透明部分).所以我按照本网站http://tinyurl.com/m27exs中的代码进行操作.它按照我想要的方式工作.它有两个ImagePanel彼此叠加的物体,最顶部有一个alpha通道(透明部分).

现在我的问题是如何改变该类中ImageIcon对象的透明度(透视度?)ImagePanel

java transparency panels

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